- Home /
return 1 or 0 from object path animation
I have a GameObject in my scene that I would like to behave like a horizontal slider. What I mean by this is that I would like to have the object move along a track. At the start position the object will return a 0 value. If a user drags the object along this preset path to the end of the path the object will return a 1 value.
I realize that this is probably a 2 step process. The first part is how do I lock the object to only travel along a predefined path when the user click-drags it. The path may not be a straight line. The second part is how to I return a float depending on where that object is on the path?
I understand that this would be much more easily handled with the GUI slider, but this object must actually reside in 3D space.
Answer by Meltdown · Mar 18, 2011 at 07:29 PM
Lets say your slider slides along the X axis. You want to lock it from moving on the Y and Z axes.
You would do something like this...
// Your variable that holds the x position of the mouse cursor in your 3d space int mousePositionX = yourMousePositionX;
transform.Translate(mousePositionX, transform.position.y, transform.position.z);
Basically the only thing that changes is the x position of your slider, the other too are simply set to what they already are.
For the second part, to determine if the slider is in a 0 or 1 position, simply get the position of your object.
if(transform.position.x <= -0.5)
return 0;
else if(transform.position.y >= 0.5)
return 1;
So you are checking here if the slider is past a certain point. Depending on where in space your slider is and how long it is on the x axis you will need to adjust it to fit.
Good luck :-)
Your answer
Follow this Question
Related Questions
Animation Opposite 0 Answers
How to get an Object to move physically correct (velocity) 1 Answer
How to detach in the middle of an iTween path 1 Answer
Oh yea! Animation addition 0 Answers