Allow generating/combining meshes at runtime in Start()
hdorriker
This can massively reduce download size of worlds in some cases with almost no performance impact. Currently we have to ship complete meshes with the world package instead of in some cases just the list of points/parameters needed to generate meshes, which places a very low and immovable cap on the amount and quality of content in driving worlds, for example. As driving worlds attempt to become more engaging and social, we are running into completely impassable issues that mean reducing comfort (more jagged colliders) for playable time (length of roads). This also results in layouts which are dictated primarily by world size and less by the activity which is the purpose of the world (driving!). This doesn't just impact driving worlds, but also worlds that may have a lot of very modular geometry which currently has to be combined manually or batched in-editor for optimization reasons, and these could also be vastly more efficient with content-per-unit-download size if this combining/batching could be done at runtime in the Start() method.
Log In
MyroP
Currently, we don't have a lot of options
- Mesh.CombineMeshes, which is exposed in Udon, but makes certain features like LODs not useable since it generates a new mesh instead of batching sub meshes https://docs.unity3d.com/6000.3/Documentation/ScriptReference/Mesh.CombineMeshes.html
- GPU instancing, but that only works for meshes that are the same.