We are excited to present a new release of Verge3D for 3ds Max! Version 4.1 brings support for the Path constraint, 16 entirely new puzzles (on animation frame, get dimension, color picker and others), improvements for some other logic blocks, integration with WebP format, reworked e-commerce features in WordPress plugin, PayPal integration, and several new demos!
New puzzle on animation frame can be used to fire an event when a certain frame is reached. You can employ it in various scenarios, for example, to pause animation until the user interacts with an object.
New puzzle get animation speed will allow you to retrieve the speed value applied by the set animation speed puzzle. In particular, you can use it to play an animation in the backward direction from the current frame (such a scenario required using variables in earlier Verge3D versions).
We added a new puzzle to the Audio/Video category called get duration. You can use it to determine the length of sounds, including midi, or videos (in seconds).
Newly available puzzle, set shadow param from the Objects category, can enable/disable casting and receiving shadows for distinct objects and groups of objects.
In particular, you can use this puzzle to manage shadows for glTF-compatible materials. Another use case is loading glTF models exported from some third-party software. Finally, you can use it for fine-tuning of the quality and performance of your applications for particular hardware in run time.
New puzzle, get object dimension, was added to the Objects category. You can use it to measure dimensions of an object along X, Y or Z axes in run time.
You can use 2 new puzzles, color picker and compose color, to supply colors to those of your Material or HTML puzzles that use CSS colors. The puzzle compose color also has the possibility to set alpha.
Even More New Puzzles
New puzzle, create dict with keys values allows you to create dictionaries more easily: the keys and values can be provided as lists, or as multi-line text.
New puzzle AR hit normal allows you to cast AR content not only to the floor but also to the ceiling and walls (imagine a lustre attached to ceiling, or wall pictures).
New puzzles – add event listener, remove event listener, and dispatch event – were added to the Advanced category. These work in the same fashion as the corresponding JS methods, and can be used to facilitate complex dependencies in highly interactive apps such as games.
New puzzles to access the local storage are available in the System category: storage set, get, remove, and check. By using these puzzles you can preserve data when the user closes or reloads the page – e.g. contents of the e-commerce cart, current configuration, or progress in a game.
Improvements with Existing Puzzles
Puzzles are now loaded much faster (especially noticeable with many tabs).
The puzzle opened file now provides various information about the file besides its contents, such as its name, extension, size, and mime type. The old behavior corresponds to the data option which is selected by default.
The set camera params puzzle obtained the option allow zoom which you can use to disable camera zooming. This may come in handy for an app working inside an iframe on a long page. In such a situation it helps prevent unwanted zooming when the user is scrolling the page.
The multi-line text puzzle can now be freely resized to suit your needs. This also tangibly reduced the width of the Puzzles editor’s toolbox where this puzzle resides.
The puzzle create text object now works faster, as we lowered a bit the default number of segments it generates which didn’t result in any visible loss of quality.
A descriptive warning will be shown on relevant puzzles should the Physics or Font Converter modules happen to be not linked to an application for some reason.
When using the puzzle texture from text, you can now set the colors for the text and background, as well as transparency for both text and background. As a result, this puzzle can generate fancy transparent textures on the fly. Make sure you enable transparency for the corresponding material.
3ds Max-Specific Features
Verge3D now supports animation along curve, which can be created in 3ds Max using the Path constraint.
Such the approach is more artist-friendly as baking path animation to keyframes is no longer required each time you need to export it to Verge3D. It also generates smaller files.
New demo called Follow Path is now available in the Asset Store which shows off how to use the Path constraint.
We added new demo called Lines to demonstrate working with curve objects.
New demo called Video Texture is now available with Verge3D for 3ds Max.
New demo called Ambient Occlusion is now available in the Asset Store.
New demo called Postprocessing is now available in the Asset Store.
Reworked E-commerce Features (WordPress Plugin)
As you know, to this day Verge3D WordPress plugin included the integration with WooCommerce (a third-party WordPress plugin for creating online stores). Verge3D WordPress plugin also included our own simplistic set of features which was accessible for use via the place order puzzle.
For this update, we completely overhauled the latter piece of functionality, turning it into a full-featured e-commerce solution. The motivation behind this our work is that although there are many e-commerce solutions out there, none of them fits well into interactive 3D world. They would also require lots of hacks and coding to integrate with Verge3D/WebGL. We want to offer our users a complete integrated package for the most popular CMS on the market, which would include all features necessary for making sales efficient.
Major features we implemented for this update:
- Proper itemization in orders.
- Products and prices are now created in the admin interface, not in puzzles as before.
- All products now have quantity.
- Currencies can be selected in the plugin settings.
- Attachments of various kind are available. Before this update you could only make screenshots and attach them to the order. However, now you can use any images, sounds, videos, PDFs, .txt files, and even glTF models. These files are then can be used to fulfill the order or just provide more information from the customer.
- Generation of formal quotes and invoices, customizable with logo and notes and downloadable as PDF. These can be emailed, or attached to an order notification.
- Possibility to make downloadable products.
- Optional PayPal integration.
- Improved email notifications. Emails are fully customisable.
- Optional shipping and billing addresses.
- Discounts and taxes.
- Everything is configurable with hundreds of settings.
The main puzzle that creates the order is now called place order + in addition to the old puzzle place order which continues to work as before. We also significantly improved the security of the plugin by thoroughly verifying all incoming data.
The updated plugin is available from the official WordPress store. You can also install it manually from the wordpress folder of the Verge3D installation directory. Note that the WooCommerce part will continue to work as before.
For those Verge3D users who seek the simplest e-commerce solution possible without even bothering about website, we implemented a new puzzle to pay via PayPal. Create a 3D scene, upload it to Verge3D Network and place the PayPal buy/donate button – what could be easier than that?
You can get the client ID from PayPal as suggested on this page.
Images saved in modern WebP format can now be used with Verge3D. WebP format is much more compact compared with PNG or JPEG images of similar quality. It offers both lossy and lossless file compression, and also supports alpha channel in both modes.
We integrated WebP with the replace texture and take screenshot puzzles. This format, however, is not compatible with memory-saving texture compression at the moment, as it is still to be supported in Khronos Group’s KTX tools.
Please note that WebP images can only be used in quite modern browsers. One can expect, however, that it will replace both PNG or JPEG formats on the web in the future.
A meaningful message rather than blank page is now shown when there are no apps in the applications folder.
We wrote a small guide on using absolute and relative URLs, as well as data URIs.
We improved the React.js and Vue.js templates by adding adapters that allow you to use React or Vue-based apps with the App Manager and Puzzles. See more info in the User Manual page.
We introduced a series of performance optimizations for the Puzzles editor. The feature can be enabled in the App Manager settings. As a result, it significantly speeds up scrolling and dragging of big scenarios, although at the expense of some visual degradation.
The Puzzles editor now generates cleaner JS code.
We fixed small UI issues in various puzzles. Particularly, the right-click feature collapse/expand now works better.
Desktop builds will always use high performance GPU if user computer has more than 1 GPU.
The load data puzzle can now disable caching of loaded files. Also .json files are automatically converted to dictionary when loaded.
The search field in the App Manager now supports special symbols.
The puzzle zoom camera now supports Ortho cameras as well. This feature was requested through the Enterprise support channel.
We improved Verge3D installer which now shows the software version and publisher in Windows’ Add/Remove apps and features dialog. It now also does not leave any files after uninstallation of Verge3D, except third-party plugins. Speaking of Verge3D plugins, we wrote an extensive guide to help you create installers for them.
We have synced the MIDI library with upstream, which should improve the playback of Roland GS files.
We fixed scene loading crash occurred when multiple .hdr images were used with texture compression. Thanks for reporting this issue on the forums.
We fixed an issue with the multi-line text puzzle, when an empty line was added each time the Puzzles are saved. Thanks for reporting this on the forums. Also the cursor and the scrollbar are now correctly positioned with this puzzle if browser tab contents are scaled.
The puzzles set value and set rgb now work with materials that use video textures. We also fixed the puzzle get texture param that didn’t work properly with video textures. Finally, video textures can now be replaced by image textures, and not just the other way around.
We fixed the issue with desktop applications created very slowly which was introduced with Verge3D 4.0. This was because Electron.js binaries were downloaded again each time Verge3D was launched anew. Thanks for reporting this on the forums.
Verge3D can now properly load animations with keyframes that are positioned out of timeline. This issue was reported through the Enterprise support channel.
We fixed a rare issue sometimes occurred when a puzzle was disconnected from an input that had a default “shadow” puzzle in it.
We fixed the bug with the replace texture puzzle: when a static image is replaced by a canvas texture, this image no longer mysteriously disappear from the list of textures.
We fixed a bug with constraints assigned to multi-material objects.
We fixed the bug with annotation visibility. Thank for reporting it on the forums.
We fixed a crash occurred when editing argument names in a procedure puzzle, which happened if the procedure is used in 2 or more tabs.
The puzzle unbind element now properly works in all cases.
We fixed some issues with the multi-line text puzzle observed in Firefox and Safari.
We disabled ambient occlusion on Mali GPUs, mostly used by previous generations of Samsumg Galaxy devices, as a work around the artifacts problem reported on the forums.