Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
locking vertical orientation/alignment
#1
Hi,

I tried all the orientation options but am struggling to find the right setting.

I have a flying machine following a spline, and I want it to align with the spline
tangent in the x z plane, but I need to lock the y orientation.

I hope that's straightforward ?

Thanks,
Ben
Reply
#2
Hi
Right now controllers can't follow a path only on specific translation/rotation dimensions. That's a feature that I am planning to include in the next major update. Until then, you can implement a solution to your specific use case by inheriting from the Spline Controller class. Override the ComputeTargetPositionAndRotation method by making sure the computed up vector is ignored and replaced by the locked y direction you want. Do you see what I mean?
Please consider leaving a review for Curvy. This will help a lot keeping Curvy relevant in the eyes of the Asset Store algorithm.
Reply
#3
(02-17-2021, 11:05 AM)_Aka_ Wrote: Hi
Right now controllers can't follow a path only on specific translation/rotation dimensions. That's a feature that I am planning to include in the next major update. Until then, you can implement a solution to your specific use case by inheriting from the Spline Controller class. Override the ComputeTargetPositionAndRotation method by making sure the computed up vector is ignored and replaced by the locked y direction you want. Do you see what I mean?


Thank you for your reply !

I just had a look into the controller script, and found it starting at line 537 -
but I am pretty new to coding so might take me a while to find the 
lines that I would have to change and how, but will try.

The reason for wanting to constrain the vertical orientation is that the machine takes off quite steeply, 
which tilts it and is a bit uncomfortable when you are inside in VR!

Regards, 
Ben
Reply
#4
if you are struggling with it, let me know and I will send you the modified code soon
Please consider leaving a review for Curvy. This will help a lot keeping Curvy relevant in the eyes of the Asset Store algorithm.
Reply
#5
Would this lock any child objects from rotating? I'm having an issue with a splinecontroller where the player cannot rotate cameras tied to child gameobjects.
Reply
#6
The controllers update every frame the position and rotation of the transform having the controller's component, it does not overwrite the transform of children.
Please consider leaving a review for Curvy. This will help a lot keeping Curvy relevant in the eyes of the Asset Store algorithm.
Reply
#7
Hmm ok. Perhaps there is some conflict with the cinemachine vcam on my child object. The strange thing is i can rotate the child on the z axis but not on the y.
Reply
#8
Maybe. To rule out any influence of Curvy's controllers, go to \Curvy\Controllers\CurvyController.cs, then at around line 709 (depending on your version), in the method called InitializedApplyDeltaTime, comment the following lines:
cachedTransform.rotation = Quaternion.LookRotation(postDampingForward, postDampingUp);
cachedTransform.position = newPosition;
This should nullify the effect of the controller on the transform in normal scenarios.
Please consider leaving a review for Curvy. This will help a lot keeping Curvy relevant in the eyes of the Asset Store algorithm.
Reply
#9
I commented out those lines and I can see that the problem persists. So its not the controller. Back to the drawing board lol.
Reply
#10
I hope you will soon find the fi
Please consider leaving a review for Curvy. This will help a lot keeping Curvy relevant in the eyes of the Asset Store algorithm.
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Shapes points orientation itsGama 3 8 01-18-2023, 02:51 PM
Last Post: _Aka_
  2d - orientation looping_co 1 5 09-01-2022, 04:17 PM
Last Post: _Aka_
  Spline controller orientation itsGama 4 30 01-24-2022, 06:38 PM
Last Post: _Aka_
  Regarding static orientation mydayz 10 287 12-05-2021, 01:25 PM
Last Post: _Aka_

Forum Jump: