This is the second part of Ghosts of Tabor:
Note all the tools listed on this post were made in C++ directly for optimization, except the dev tools that are a combo.
Tools for renaming and automatic material instances creation.
Some of the headers and files created needed a custom calls, so did a batching tool process to help the artist and switch platforms automatically.
- The Physics & Destruction:
At some point in the game we needed of breakable glass, as our artist nor programmers found a solution for this, decided to implement a modular system that allows to have any kind of breakable element in the game, say a glass bottle, glass, wall or a red barrel.
And yeah this class were totally replicated.
This came with a system prior I developed for my games but ended in a mutation that have layers/steps lets say, where you can define of step affects the world, can cause damage in area, play sounds and effects, you can have as much states as you want, for events like degradation of a wall or glass, made some example effects for the artist for break bottles and glass using Niagara and specific materials for particles for lower cost.
By the end of the day this were the system used for all the destruction glass in the Island and other elements like barrels etc.
- The Level Creation & HLODs:
Due engine limitations the HLODs by default don't work well with the baker and was a tedious task for the artist, so made the custom HLODs, this implementation support different meshes individually plus particles.
Getting the local player location we can know at all time were the player is, this is done on super low frequency to don't affect the game at all, once the player is close, the system start to process the parts assigned to be rendered, once the whole models are load will remove the hull one or ones as more than one were possible to be set, plus the load times can be personalized plus the render load order.
All the load is batched so it don't affect the game or created freezes.
- The Instances:
The auto instancing didn't worked as we expected on Quest 2, so the solution from my side were to include my instances system that provides smooth material changes also, it were used to create trash on the floor and other elements, like a complete boat containers collection with variations.