Jump to content
Sign in to follow this  
Atom

[SOLVED]Why Does My Boat Flip Around On The Path?

Recommended Posts

Hi All,

 

I have a point that is copied to a line that is projected onto a mesh surface. I have an attributeVOP that animates the U coordinate to move the point along the line. I have a polyFrame with non default values to help with the up vector. I also have a Copy that copies my row boat to the point.

Most of the time the animation works as expected the boat appears to travel along the curvature of the mesh. At a few points along the path the boat rotation flips around 360 degrees.

 

Does anyone know why this is happening?

I'm not sure how to fix that...

boat_flip.gif

ap_me_rm_jimi_chest_plate_ripple_102916_1b.hipnc

Edited by Atom

Share this post


Link to post
Share on other sites

I don't know why the float flips around, but you can fix this just creating the up vector before the copy node. I did it and it seems to work as expected

Share this post


Link to post
Share on other sites

But the polyFrame creates an up vector already. Are you saying you are overwriting that existing up vector with a new value?

How are you constructing the up vector, with a wrangle..?

v@up = set(0,1,0);

 

Edited by Atom

Share this post


Link to post
Share on other sites
1 hour ago, Atom said:

But the polyFrame creates an up vector already. Are you saying you are overwriting that existing up vector with a new value?

How are you constructing the up vector, with a wrangle..?


v@up = set(0,1,0);

 

There is no up-vector.

You use the primuv vop to fetch N and P, but not up.

Share this post


Link to post
Share on other sites

Ok, so the  attributeVOP is discarding/ignoring the up provided by the polyFrame so it needs to be re-established after the VOP to make up for that loss.

In this case it looks like the code is...

v@up = set(0,-1,0);

Untitled-1.jpg

Thanks for the help!

 

Edited by Atom

Share this post


Link to post
Share on other sites
1 hour ago, Atom said:

Ok, so the  attributeVOP is discarding/ignoring the up provided by the polyFrame so it needs to be re-established after the VOP to make up for that loss.

In this case it looks like the code is...


v@up = set(0,-1,0);

Untitled-1.jpg

Thanks for the help!

 

The vop is not discarding/ignoring anything in the first input, but your up vector is on the curve in the second. You need to fetch it, just like you have done with P and N inside that vop.

 

Share this post


Link to post
Share on other sites

Ah, so attributes on other input sockets are not implicitly inherited. Got it.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×