Graphics - Presets for real time GPU Graphics Quality - Very Low, Low, High, Very High and Custom. Game Settings > Graphics, Voxel Editor menu Settings > Graphics > Graphics Quality
Voxel Editor - Added Minecraft materials such as mossblock, tuff, deepslate etc.; set materials missing colours and parameters (e.g. corals); and grouped some of the materials by type, e.g. glass and glasspanes, woods, plants etc. (work in progress). To view the new Minecraft materials, import a Minecraft map with menu File > Import > Minecraft Map (*.mca). If you’ve imported Minecraft worlds into a version of Avoyd older than 0.8.15, you should install the latest version of Avoyd and import again to ensure the latest materials are used.
UI - Added button (top right) to escape fullscreen along with many other UI improvements
along with the following changes:
Graphics - Improved real time GPU shadow map resolution distribution by scaling cascade distances with minimum observed distance
Graphics - View performance now shows FPS, with a detailed option to view frame time, CPU time, GPU time, pixels and primitives rendered
Voxel Editor - Improved octree defragmentation performance by over 1.2x, also improves saving performance when a defrag is scheduled
Voxel Editor - Albedo Colour debug render mode and path traced Render Albedo view use constant ambient light colour to better enable 'green screen' and other techniques. To set for real time GPU rendering: menu Settings > Voxel Style > Display Mode = 'Albedo'. For CPU path tracing: menu Render > Mode = 'Albedo'
and fixes:
Voxel Editor - Exiting the application from the Main Menu when started directly into the Voxel Editor with no changes no longer erroneously detects unsaved data
Taking jpeg screenshots with certain sizes no longer crashes. Take a screenshot shortcut: F10
Some technical details (Doug):
For the Improved real time GPU shadow map resolution distribution I altered the frustum culling of LOD nodes to calculate a minimum observed distance/ This is then used in the next frame to calculate the required shadow map first cascade range and scaling all other cascades by this.
The octree defragmentation performance improvement was a switch from the std::unordered_map to robin_hood::unordered_flat_map from https://github.com/martinus/robin-hood-hashing. I still support the std::unordered_map in the octree code as I have customers who don't yet want to add a dependency. I am using my own hash code based on a 32bit customized xxHash but at some point might try the robin_hood::hash.
Avoyd Voxel Editor GPU real time render with Very Low Graphics Quality selected, and (below) with Very High Graphics Quality. Credit: model Spindle by Niklas Mäckle knosvoxel
Avoyd Voxel Editor GPU real time render using an orthographic camera in version 0.8.14 (above) - The GPU rendered shadow map cascades use a fixed distribution. In Avoyd 0.8.15 (below) - The shadow map cascade distribution is determined dynamically based on the scene improving the shadow map resolution when possible. Credit: Minecraft Map Greenfield v0.5.3
Moving light azimuth with Avoyd 0.8.15 shows distant shadows updating in real time due to improved variable GPU shadow map cascade distribution. Previously distant shadows used the lower resolution CPU calculated shadowing, which updated far slower. Credit: Minecraft Map Greenfield v0.5.3