2.50.0 - Our Biggest Update Yet!
Support ReactVision
Love what we’re building? Help keep ViroReact thriving by becoming a GitHub Sponsor. Your support helps to fund core maintenance and new platform integrations. Did you know that if every install in the last 6 months had paid us just $1 we'd have enough budget to not only fund our current team but also grow the team further and accelerate development.
ViroReact 2.50.0 is a major feature release introducing support for ARCore Cloud Anchors, the Geospatial API, and Scene Semantics. It also includes a comprehensive overhaul of GLTF 2.0 support, adding critical lighting, material, and geometry features.
🌟 New Features
Occlusion Support
Added a new occlusionMode prop to ARSceneNavigator. This enables accurate depth blending where virtual objects can be visually obstructed by real-world objects.
Cloud Anchors (ARCore)
Enabled support for hosting and resolving anchors in the cloud, allowing for multi-user, shared AR experiences across devices.
Documentation: Cloud Anchors
Geospatial API
Integrated Google's VPS to allow for global-scale AR. Developers can now place anchors at specific geodetic coordinates (Latitude/Longitude/Altitude).
Documentation: Geospatial
Scene Semantics
Added an API to query semantic labels of the current scene, allowing the application to identify real-world surfaces such as "sky," "building," "road," etc.
Documentation: Scene Semantics
🚀 GLTF 2.0 Improvements
We have significantly expanded our GLTF 2.0 specification compliance.
Core Geometry & Materials
- Non-indexed geometry support: Added support for primitives without index buffers.
- LINE_LOOP primitive type: Now converts automatically to a line strip with a closing segment.
- TRIANGLE_FAN primitive type: Now converts automatically to individual triangles.
- Mipmap filter modes: Implemented proper separation of minification and mipmap filtering.
- Alpha masking (MASK mode): Added alphaCutoff support for precise transparency control.
- Emissive materials: Added support for emissiveFactor and emissiveTexture.
- STEP animation interpolation: Added support for discrete keyframe transitions.
- Sparse accessor support: Enabled overriding specific buffer values.
- Camera & Scene 9. Perspective cameras: Added support for FOV, near/far planes, and aspect ratio definitions. 10. Orthographic cameras: Added support for xmag, ymag, and clipping planes. 11. Default scene selection: The loader now respects model.defaultScene.
- Lighting (KHR_lights_punctual) 12. Directional lights: Support for color and intensity properties. 13. Point lights: Support for color, intensity, and range/attenuation. 14. Spot lights: Support for color, intensity, range, and inner/outer cone angles.
- Material Extensions 15. KHR_materials_unlit: Added support for the constant/unlit lighting model. 16. Normal texture scale: Added control for bump intensity. 17. Occlusion texture strength: Added control for Ambient Occlusion (AO) influence.
🐛 Bug Fixes
- Fixed takeScreenshot functionality on Android devices.
- Resolved an issue where AR Markers were not being recognized in specific lighting conditions.
- Fixed memory leaks occurring during rapid scene transitions.
Need Help?
If you're looking for support getting started or want an expert to help you build a comprehensive AR or VR application, look no further than our community Discord and our trusted experts.