PDA

View Full Version : Instances following motion, but then not

mummyman
12-29-2016, 06:26 AM
I have an undulating surface. Then, I instance some inner tube shape objects on that undulating surface. The inner tube shapes have something parented to them. That shape moves up, through and out of the innertube, while all getting instanced. Like spaghetti through the innertube. BUT, I'd like to have the spaghetti stop following the undulating motion after it gets out of the inner tube. Then follow it's own motion, in place. There are too many to hand key everything, and dissolve them in/out. Any ideas? I don't think there is a way to freeze the position of the spaghetti so I know where in space it is when I want the new motion to take place.. Maybe instancing isn't the way to go?

Thanks, Brett

bazsa73
12-29-2016, 06:41 AM
Do it with particles. Attach/Instance the little guys you want to release to particles and then you can easily lift them off with a force. Like a positive gravity or wind etc.
Or create a second invisible undulating surface with the little guys attached to it and at one point you trickily lift off this second undulating surface and all your little guys with it.

mummyman
12-29-2016, 07:03 AM
Ha.. that sounds like a plan. I'll give it a test. But wouldn't the particles have the same issue? Following the undulating surface? basically, I'd have 2 objects. The inner tube which stays put, following the surface, like on top of water. then the 2nd object would snake up and out of the tube and flow out wherever. Thanks!

mummyman
12-29-2016, 07:31 AM
Not really having luck yet.. my brain might still be away

It's more complicated... there are dozens and dozens of them. Can you show me a quick setup? or should I show you what I'm trying to accomplish?

mummyman
12-29-2016, 08:58 AM
Do it with particles. Attach/Instance the little guys you want to release to particles and then you can easily lift them off with a force. Like a positive gravity or wind etc.
Or create a second invisible undulating surface with the little guys attached to it and at one point you trickily lift off this second undulating surface and all your little guys with it.

Already getting some easier results... I'm doing what you said to try and do a second, invisible undulating surface... then those instances match up to the first. And I can fade off the undulation displacement. Hard to get random ones working, but it's a work in progress. Sometimes that's all I need is to chat it out. Cool. Off to test more

lertola2
12-29-2016, 10:03 AM
Already getting some easier results... I'm doing what you said to try and do a second, invisible undulating surface... then those instances match up to the first. And I can fade off the undulation displacement. Hard to get random ones working, but it's a work in progress. Sometimes that's all I need is to chat it out. Cool. Off to test more

It seems like you got it. Here is a test that does the same thing.

http://forums.newtek.com/attachment.php?attachmentid=135418&d=1483030684

135417

mummyman
12-29-2016, 10:31 AM
Exactly. Thank you.. That's what I ended up doing!

bazsa73
12-29-2016, 11:45 AM
Exactly. Thank you.. That's what I ended up doing!

Great that it works, but there is also offset for instances, if the displacement is aligned on Y axis you can add Y offset nodally and your spaghetties will fly upward.
Undulating a bit though.

jeric_synergy
12-29-2016, 12:16 PM
It seems like you got it. Here is a test that does the same thing.

http://forums.newtek.com/attachment.php?attachmentid=135418&d=1483030684

135417

NIFTY! Can't wait to get home to autopsy that example. THANKS for uploading a Scene!!!!

lertola2
12-29-2016, 12:28 PM
NIFTY! Can't wait to get home to autopsy that example. THANKS for uploading a Scene!!!!

It would be a lot nicer if the animation of each instance could be offset randomly in time instead of all happening at the same time. I haven't been able to think of a way to do that.

mummyman
12-29-2016, 02:00 PM
It would be a lot nicer if the animation of each instance could be offset randomly in time instead of all happening at the same time. I haven't been able to think of a way to do that.

The way I'll have to do it, is do one, bake the motion of the noodle. Then repeat a few times to get variation. Also, because things are at 0,0,0 I can rotate the instances in heading to get more variation. Unfortunately, this is for a 360 piece.. so I have a lot of work. I can't really cheat it with camera angles!

jwiede
01-02-2017, 08:46 PM
It would be a lot nicer if the animation of each instance could be offset randomly in time instead of all happening at the same time. I haven't been able to think of a way to do that.

Perhaps modulate the strength of the undulating effect by an animated noise texture map? Or reference into the animation using the separate animated noise texture map for offset?

This kind of stuff was definitely easier in HDI. I'm still not satisfied with the complexity needed to do instance-unique offset animations with LW's instancing, it's too common a need to require manual node work each time, that's inefficient. Even using canned nodes, it still incurs the node flow perf. penalty. There needs to be a direct envelope or equiv. mechanism available for such a common scenario.

What would be really neat is if you could _simply_ direct instances to use (randomly-offset) animation tracks, even randomly-selecting from a group of tracks via some enhanced motion mixer-type arrangement. However, even just providing envelope-based offsetting in a single motion file (MDD or customized equiv) would make it much more efficient/direct than today (essentially how HDI used to do it).