We are excited to announce a new release of Verge3D for 3ds Max and Verge3D for Maya, as well as Verge3D Ultimate! The 4.8 version brings improved integration with the corresponding 3D modeling software, spatial (3D) audio effects, upgraded Performance Profiler, and major shader optimizations for faster rendering and loading.
3D Audio
You can now easily add spatial audio effects to your Verge3D scenes thanks to the newly introduced positional speakers. Simply make a sound positional, and attach it to a 3D object – and you are all set!
Both sound and music audio assets can be turned to positional speakers. To fine-tune the 3D audio effect, you can use the rolloff – the distance from which the sound intensity starts to decrease, and the factor – the rate of this decreasing.
This feature will be especially useful for creating more immersive VR experiences. Put your VR headset on and try out the updated Virtual Reality demo where sounds are attached to the mixer appliance and the radio set.
More on Sounds (and Videos)
The Sound iOS Workaround entry in the Puzzles library now works more robustly – in fact, it can help on desktops and Android devices too. This group of puzzles basically makes it possible to play sounds or videos upon application startup, which is normally forbidden due to security restrictions of the browsers.
With that being said, the right way to initiate sounds or videos in your app is to make the user click on the 3D canvas (or some sort of a menu or startup screen). Once the user clicks on it, the playback is unblocked, with no workarounds needed.
3ds Max-Specific Updates
The Max Distance parameter for cascaded shadows can now be explicitly set in the settings for Directional lights.
You might want to keep it at its lowest for best quality, yet still high enough for your shadows to not disappear too near from the camera.
Maya-Specific Updates
This update brings many usability improvements in the Verge3D plug-in.
First of all, the Hotkey Editor is now supported, meaning the possibility to assign shortcuts to Verge3D operators. See the screenshot where we assigned Ctrl‑Alt‑P keys to quickly run Sneak Peek.
As you can see, the items from Verge3D menu obtained some fancy icons. When hovering over the menu items with the mouse, the corresponding usage tip is shown in the status bar at the bottom.
A related feature is search that is invoked with Ctrl-F. Start typing ver… or glt… to show up the menu with Verge3D operators for quicker access.
Next, the dialog Recent Commands (which is accessed from the Edit menu) now properly displays Verge3D operations thus allowing you to immediately repeat them.
Then, we disabled Maya’s built-in Undo and Redo operators for some Verge3D operations where they don’t make sense (such as exporting or Sneak Peek).
There were also some fixes. Particularly, we fixed the rendering of the Ramp node, which showed artefacts for some input parameters. Also, when a Texture Coordinates node is connected with the Ramp, Verge3D now correctly handles its Wrap and Mirror checkers.
Finally, we fixed the crash issue with exporting empty shading groups. Such the situation can occur when a model is imported from an FBX file.
Performance Profiler
Verge3D’s scene analyzing tool (F12, then switch to Console, then in the app hit P-P-P) obtained multiple improvements this time.
- the total number of compiled shaders is printed, which is a very important factor affecting how quickly the app is loaded (the less the better)
- timing for materials and shaders is now provided with microsecond precision
- non-rendered materials are denoted with N/R (meaning they are hidden or invisible due to frustum culling)
- Render Calls and Triangles Rendered are always displayed as integers
- resolutions of cubemap textures are shown in a more clear format e.g. 256x256x6
- proper names are printed for system materials and lookup textures
- the depth texture is now properly shown in the profile
- various formatting adjustments
Puzzles
Here is a truly long-awaited feature: when swapping materials via puzzles, a replaced material is no longer removed from the scene, and can be re-assigned later. As a result, there is no need to bother about preserving the materials by assigning them to swatch objects when building a configurator.
We have implemented the possibility to zoom an embedded Verge3D scene with Ctrl + Scroll as in Google Maps. You can use the puzzle set camera param to enable this behavior. Thanks for suggesting this on the forums.
Puzzle bind element now works in AR mode. Thanks for bringing this up on the forums.
Puzzle check performance updated for the latest hardware database, which particularly includes iPhones 18 and latest iPads.
Shader Optimization
We revised the shader generation process inside the engine.
First of all, we got rid of unused/duplicate/deprecated/legacy code paths to unburden the shader compiler. But most importantly, we reduced the number of unique shaders by streamlining their code structure so that similar shaders are properly detected as such. This significantly reduces the compilation work required for loading a more or less advanced application. Loading speed gains are 10-20% on average and can be even higher if lots of materials are used in the scene.
This also benefits to making the browser’s internal shader cache more efficient across different applications, and even websites. For example, when somebody visits yet another Verge3D-based website, it may load much faster thanks to pre-compiled shaders that are already stored in the browser cache.
Finally, we ensured that WebGL 1.0 compatibility code is only inserted in shaders only when needed (e.g. when running on older hardware).
3ds Max and Maya Material Packs
We have recently released new Machinery material packs for both 3ds Max and Maya. These libraries contain several dozens of shaders usable in various industries, as well 3 HDRi environment maps carefully tweaked for maximum visual quality.
The material packs are fully compatible with respective 3ds Max / Maya material systems to allow for simple production pipeline.
Other Features
In the previous 4.7 release we removed some PCF filtering methods from the export plugins and Puzzles. Now we are dropping them from the engine entirely, with the shadow docs updated accordingly.
We also cleaned up the engine from other deprecated features, glTF extensions and JS APIs.
We improved click detection for points, lines, and grids.
The default .js file of the application was simplified a bit by using a class-based custom preloader.
Skinning and morphing are now supported for objects reflected by a reflection plane. This issue was reported through the Enterprise support channel.
Normal mapping now properly works with skeletal animation. Thanks for bringing this up on the forums.
Fixed Bugs
The vector math puzzle can now be plugged into both vector and numeric inputs (because its dot operator produces a number). Thanks for bringing this up on the forums.
We fixed the crash when using the Sprite class via JavaScript API.
We added a missing search field to the puzzle for looping through dictionaries.
The engine can now handle Points and Lines from glTF files created by some third-party exporter. Thanks for reporting this on the forums.
Auxiliary objects such as points, grids, lines, sprites, etc no longer corrupt rendering when outlining is enabled. Thanks for bringing this up on the forums.
Documentation
We reworked the API documentation so that its 50+ code examples can now be easily copied and pasted into the exec script puzzle, and will work without any modifications.
We extended and improved the material library docs to cover more correct ways to install and use the asset packs, as well as other topics.
Update Now!
Get the new version of Verge3D from the downloads page! Let us know how it works for you, or suggest new features for implementation on the forums. We’d be happy to hear your feedback!