You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A new function hover3d() has been added to display
"hover hints": labels next to points when the mouse
passes near them.
A new material property "texmode" has been added
to control how textures are applied. The default is "modulate",
consistent with previous versions. If set to "replace",
the texture is displayed without any lighting effects or dependence
on the original color of the surface.
Many of the demos have been moved to a new vignette called demos.
rgl now uses the glad loader which will eventually allow
access to newer OpenGL functions in systems that support them.
Minor changes
The texenvmap = TRUE material property is now supported
in WebGL.
The method of including shader source code
has changed to work around a limitation in Jupyter.
The default C++ standard is now accepted, rather
than requiring C++11. On R versions prior to R 4.2.0
C++11 is still requested.
Bug fixes
The as.mesh3d.rglId() and as.triangles3d.rglId() methods
and the selectpoints3d(), writeOBJ(), writePLY()
and writeSTL()
functions did not handle indices
in the objects they were processing (issue #293).
Transparent planes were not always drawn properly
in WebGL (issue #300).
view3d() now returns a lowlevel() result so that
it will be handled properly in WebGL vignettes with
auto printing.
If transform3d() or rotate3d() changed the orientation
of a mesh3d object with normals, the normals ended up
with the wrong sign. (Reported by Stephane Laurent.)
scene3d() (and hence rglwidget()) did not save
the normals for unlit objects. When the objects were
also indexed, this prevented proper calculation of
front and back. This is fixed, and a warning is
issued if normals are not provided when needed.
It was possible to call glVersion before OpenGL was
initialized; this resulted in a segfault with the new glad loader, and may have been the cause of some older crashes
as well. This has been fixed.
readOBJ() did not handle comments properly.
Sprites consisting only of line segments (as used
for example by pch3d()) caused rendering to fail in rglwidget() (issue #316).
Headers have been cleaned up to fix problems
identified by Rtools43.