- Home /
Mesh manipulation at runtime - existing tools / libraries?
We are building an asteroids-like game but more modern etc. We were thinking that it would be a neat feature if the asteroids were affected dynamically by the player's shots depending on where they are hit, how hard, with which weapons, etc.
So basically this is down to lots and lots of mesh manipulation at runtime. Mainly punching small holes in the mesh, grouping holes into bigger craters, deciding if and where it should break in half, smoothing the halfs and the crater edges, and finally deciding when a chunk is small enough so that it explodes for good. Then there is the question of the collision mesh as we are using low-poly collision mesh versions of the high-poly render ones. So those would have to be manipulated or recreated at runtime as well.
I have read around and I grokked more or less how to manipulate meshes from code. I see that in essence in Unity it's pretty simple, it's only the specific algorithms that are complex so I will have to learn them well first.
But before I embark on this journey, I wanted to check that I'm not reinventing the wheel - are there any existing libraries or tools out there for runtime manipulation of meshes for unity? (either free or paid, we'd consider both of course). Or perhaps there are libraries that provide the building blocks for these operations? Are there any corners of the Unity API itself that can help me that I might have missed (i.e beyond manipulating the Mesh class' properties).
Any advice on an alternative approach would also be appreciated. i.e I considered pre-baking / slicing the mesh into several parts which are "glued" together for example, but wasn't sure if this is a better approach.
You might try looking into some of the voxel solutions, i.e.: http://cyclopsframework.org/voxelform/
Your answer
Follow this Question
Related Questions
The name 'Joystick' does not denote a valid type ('not found') 2 Answers
Mesh deformation simulating a fire 0 Answers
transform.active question - Model Mesh Scripting 2 Answers
Ignore/Destroy then re-enable Mesh Colliders 3 Answers
Edit SkinnedMeshRenderer 1 Answer