Saturday, August 17, 2019

unity - Effects of collisons: broken glass, damaged cars, how are they created?


My question is related in particular to achieving the effects of collision in game engine, how is this done?


I have searched a bit, read from the internet and went through a few tutorials, and saw that one way to create one of the effects, explosion, or something breaking is to create the model in pieces, and apply force (in a game engine such as Unity 3D) to make the pieces fly off. It seems to be a solution, but it doesn't address the problem of items that are vaporized in a big explosion, with so many pieces. How is this done? Basic methods and tricks etc would be helpful.


Secondly, the problem of things bending and getting damaged on impact, such as a car's front end destroyed when it hits a wall? How is this done? One thing that comes into my mind is to create each component of a car in a different state as an animation in 3Ds Max or Maya, and then in the engine, according to the collision, switch the model state in the time bar. Is this how it is done?


Finally, what about materials, such as net of a basketball net, or a soccer goal net for example? Effects of ball hitting it can be calculated and applied in a script, but how to make the net bend and stretch with it? Is it done through models or materials? Also what about a flag fluttering in the wind?


My questions are specific to game engines, particularly Unity3D. Some good links on the subject would also be helpful.



Answer



I've never used Unity so I can't tell you specifically about that, but I can give you some keywords to look for. Explosions and similar effects are done with particle systems. Particles include smoke and fire done with screen-facing quads, but small meshes that look like bits of twisted metal or shards of glass, etc. can be treated as particles as well, since there can be a lot of them and they usually disappear after a short time.



Damaging an object is usually done by swapping out different pieces of geometry, like you mentioned. There's no universal term for this, although they're often called breakables. Usually these different states are created by an artist ahead of time. There are some tools, such as Havok Destruction, that do real-time, dynamic shattering or deformation in the engine. This kind of thing is expensive in performance and tricky to make work well, though. It's an area of active research at present.


Bending and stretching nets, flags, etc. are the realm of cloth simulation. Many engines include this nowadays. Internally, it's done by making a finely subdivided mesh and applying a physics simulation that treats all the vertices as being attached to their neighbors by little springs.


No comments:

Post a Comment

Simple past, Present perfect Past perfect

Can you tell me which form of the following sentences is the correct one please? Imagine two friends discussing the gym... I was in a good s...