SimplyMaya Forums

Welcome to the forum, feel free to ask questions here.

 SM Forums / Maya Questions / Dynamics & Special Effects / Dynamics: A few questions...
 Register FAQ Calendar Mark Forums Read

 Dynamics & Special Effects Maya Particles, nDynamics, Fluids, Rigid Bodies & General VFX

 06-12-2014, 10:18 PM #1 xgabrielx Registered User   Join Date: Nov 2007 Posts: 75 Dynamics: A few questions... Sorry to re-post. I didn't see this forum all the way down here and posted in the wrong place. I've spent a long time messing around making models, but never really explored Mayas other capabilities. I'm thinking of a scene, that I really don't want to animate by hand. Basically, we're in a room in a ruined castle and the dead leaves on the floor start to fly around and around the room. Can that be done? I'm sure you can create a wind and have it interact with objects and have them interact with other objects, but how well does Maya do stuff like this? Does it take how the aerodynamic properties of an object change as it moves through the air into account? Does the wind form eddies and low pressure areas in the lee of an object? Can I just create a wind and let the simulation do everything, or is it not that close to reality? What about the objects? In this case leaves...They move the way they do in the wind because the force of the wind can cause them to twist slightly. Can objects in Maya behave this way, or are they effectively indestructable and infinitely rigid? I have a few Dynamics tutorials, but I'm just asking if the knowledge I'm after is likely to be in them before I invest hours in watching them. Edit: Also...what about a scene similar to the one in 300 where the spear knocks the dude off his horse? Okay, so, in the movie, the physics were impossible, but, rather than have an object hit another object and either bounce off or transfer its momentum to the other object (Or, both), what about objects like in the case of our spear? Can you have it penetrate the other object, BUT with friction so there is some energy transfer, or so that penetration stops once our spear is buried up to a point that's too wide for it to penetrate any further, after which, the remaining kinetic energy of the spear is all transferred to the poor horsemen. (The 300 scene was just an example. The best effect in that movie was giving all those actors ripped six-packs, using a magic marker and some gravy browning.) Edit: One more question...I have the scene done, it's just a camera following a ball through some trippy obstacle course. Other than the ball, the only other things that have any fields applied are a bunch of skittles. (Well, about 200) Even in wireframe, the simulation only plays at a couple of FPS now. How much difference would caching it make? I wish I'd known about that before I started, so I didn't have to keep playing it from the start every time I needed to check something. But, for future reference, how much difference would that make to the render time? I have a few spotlights with raytracing turned on, and most of the geometry is somewhat reflective, but I've never had anything render anywhere near this slowly on this machine. Last edited by xgabrielx; 06-12-2014 at 10:19 PM. Reason: Typo
 08-01-2015, 02:36 PM #2 LauriePriest Moderator     Join Date: May 2003 Location: London Posts: 1,001 Hey so lots of questions! I'll answer these in a generic sense rather than maya specific for the most part, i'll mention a few approaches used to achive the kind of effects you are after and why as well. 1. Leaves blowing around. Approach one, simple particles: So for many cases if you have a quick shot where there isn't much complex motion e.g. eddies. This can be achived by doing a simple particle simulation with some friction and animated forces. Simple particles are generally dumb, so each particle has little to no knowledge of other particles , you can do particle - particle collisions but these will be simple implicit sphere collisions where the solver will just move a particle out of other particles at each step. Particles in most applications do poly collisions so you can get collisions/ friction/ bounce with objects in a scene. Instancing and collisions: With particles like this there is no geometry representation in the solver, the geometry you instance on to the particles has no impact on the simulation. Any collisions are done by a radius on each particle. Orientation: Simple particles usually have no or a very basic concept of orientation, with nParticles the integrator can handle rotations but they will not be good for things like leaves but fine for hundreds of pieces of rubble. Orientation can be computed post simulation by expressions based on the change in direction of velocity. e.g. the angle difference between the last step and the current step based on velocity can be described by acos(dot(normalised(previousVelocity) , normalised(currentVelocity))) Approach two, fancier simple particles: One thing that is frequently done to enhance the look of a particle sim for leaves or particles larger simulations is to advect particles with a fluid simulation. If you did a simulation of some smoke blowing through a corridor you can use this to move the particles though the environment, essentially replacing other forces you might use. Because fluid simulations can capture vorticies (eddies ) this will give you that incompressable volume motion you're looking for. A note on particle instancing: With particles you attach a geoemtry to each particle and render time ( instancing ) by default this is usually a static geometry,however you can cheat the feel of bending by attaching a sequence of geometries that can shift to give the feeling of you're geometry changing even though its no simulated. This could be driven by the velocity of the particle for example so you could have the leaf bend more as it moves faster. Approach Two, cloth: This is probably the most straight forward way to get alot of what you are after, if you represent each leaf with a simple plane with a few subdivisions and convert them into cloth objects, you will get the look of the leaves bending with the motion as well as everything else you get from particles. However I don't think you can simply advect this by fluids in maya though this is trivial in other applications. Approach Three, rigid bodies: Ultimately this will give you a similar physical motion to particles but the collisions are resolved properly with geometry so you will get a much better integration. Obviously by definition these are rigid solves but it is possible to give the feeling of bending by building a leaf that is made up of multiple rigid bodies that then drives you're original mesh. For example you can scatter a few spheres over a leaf ( or convex decompose the leaf if you can) and then use these as collision geometry in a rigid body sim and create constraints between each body to give a feelign of bend in the simulation. A wrap or lattice deformer could then be used to deform the orginal leaf geometry by the rigid simulation. This is NOT EASY in maya though more trivial in other packages like houdini. 2. The spear example generally wouldn't be a simulation but would be hand animated. Rigid body simulations generally don't handle this kind of situation. If wood splintering was needed then either an finite element solve or a rigid body solve would be used to break the shield and then secondary particle simulations would add detail. A finite element solve is only different from a traditional rigid body solve in that the constraints between a single object such as a piece of wood are solved all at once rather than individually which allows for a sense of better energy propergation through a matterial. This is usually coupled with dynamic fracturing which makes life easier in some cases. ( though really isn't as magical as everyone thinks it is). 3. 2 FPS is totally expected for a large rigidi body simulation, you should be caching the simulation to disk before rendering. You're workflow should be: 1. work on youre simulation 2. cache you're simulation 3. render the cached simulation. Simulation time should not effect render time at all. __________________ FX supervisor - double negative