Hi there, I was thinking that a preroll frames slider would be useful in the record markers phase. So we can have our ‘Playback Range’ unchanged (to the actual scene) and have it record from X amount of frames before the range starts as a preroll , would save time from manually adding the preroll and reduce things like human error.
Thanks for the suggestion. Do you mean it would stay at the start frame, and solve the simulation e.g. 5-10 frames to resolve intersections and relax the pose etc, or that it should set the Maya timeline back e.g. 5-10 frames when recording?
What do you expect should happen when you aren’t recording, and playing back normally? Should preroll only happen during record? If so, would you expect to get different result from playing back versus recording?
The current approach would be to have preroll in the Maya timeline, such that you record what you see.
Yeah the way I would imagine it working is that on the record settings specifically there would be a 3rd slider that was ‘Pre Roll’, and you put in however many frames. For my case specifically it would rest the hair on my character over 30 frames - Then start recording. As it is inside the record settings it would only apply with the record button
so if your frames are say 0 - 150, and preRoll was at 15. the system would start the simution at -15, start recording at 0-150, and apply at 0 - 150.
The issue with a preroll in maya itself is having to manually set the offset frame time manually then setting it back. this would just take out alot of that work. I am working with 40 shots of hair on characters and a preroll would be ideal to knock out these shots as opposed to the manual work. For now i am considering a scripted solution but I can see the benefits for many that use the ragdoll system for per-shot simulation that is outside of your classic ragdoll (say, hitting a character, they react lets say)
Ok, that’s achievable. But you would end up with different results from recording versus playing back, since playing back would not include that pre-roll.
Another option that works today is to override the Start Frame on the solver, to include your pre-roll. That would also apply during record.
I have been using the inbuilt ‘Frame Range’ for simulation as thats how all the shots are setup - if this just overrode the start frame purely for the sim/recording then set it back that would work precisely as intended
A third option is to set the frame range in the Record options instead; that way you can keep simulating with one range, and record another. You can also call ragdoll.api.record_physics() from Python, if you have many shots to manage and automate.