|
I was just wondering basically how the Physics engine works; it might help me work with it a little easier. I understand it basically uses algorithms and colliders, and alters transforms of objects to change them. I have a few specific questions, however; 1) Is there anything I'm missing here, or do I have it basically understood? 2) Does it work with more complicated physics concepts like inertia/momentum, centrifugal forces, and reactions? (as in, with every action there is an equal and opposite reaction - so for example if one object exerts a force on a more 'massive' or stable object, it will instead exert that force on itself in an opposite direction.) If not, is there a simple way I can implement these? (Well, relatively simple.) I don't exactly understand the math behind it, but I figure I could potentially sort of 'plug into' the native physics engine; or maybe fake it using the currently available functions/scripting, if less dynamically. (as in my earlier example, I write a script that allows for such things - and checks relative masses, then applies the correct forces to the appropriate objects.) Though on that note, the way I understand it forces are added to objects, but objects don't necessarily inflict force on other objects? I know it natively does this to some extent, but I'm not sure how far that goes. 3) Is there an inherent way to make a rigid-body more dynamic in the way it interacts with physics? As in, instead of forces only applying translation/rotation, actually modifying the mesh of the object, to stimulate elasticity/tensile factors/resistances/deformability. (For example, making a ball squish/stretch as it is pressed against the ground, and then reversing its' momentum; Or a fibrous material like wood or fiberglass 'bending' with a force, then snapping back into place; Or a metal object bending, then keeping its' new shape; etc.) How are things like this handled? Does it make it hugely more complicated to calculate? Would I have to essentially rewrite the engine to apply these things, or would it be possible to create an add-on to the original engine? I understand that's where strategic animation comes into play, but at a certain point those things just aren't possible to animate; or rather, you are working in so much detail, that you might as well write a new physics engine because it would take less time. Now keep in mind I have little understanding of how animation works either, so it might not take as much as I imagine. In any case, I'm mostly curious, I don't have an immediate application just yet. Thanks!
(comments are locked)
|

I'm interested in this topic too, specially whether unity works with the concepts you mention, inertia/momentum, action reaction and such... Have you got any help in this topic??