- Home /
Aligning Y-Axis rotation of stretched gameobject to specific angles while retaining initial position
Hi, I'm creating an RTS and I'm having an issue with my road creation. I'm creating a cube which I stretch along its Z-Axis for the player to get a visual representation of where the road is gonna be placed, and when I click I instantiate a series of gameobjects which are essentially connected road pieces, and then destroy the stretched-out cube. For my convenience I'm only allowing the players to create roads aligned to the X and Z axis, no diagonal roads. The problem I'm having however is that the stretched out cube can rotate wherever it wants, but then when I click to place the road, the road gameobjects are instantiated at the proper places with correct rotation. So I would like some assistance with limiting the Y-rotation of my stretched out cube so it's at rotations 0, 90, -90, and -180, but still remain locked at its starting position.
This is how I adjust my stretched-out cube:
start.transform.LookAt(end.transform.position);
end.transform.LookAt(start.transform.position);
float distance = Vector3.Distance(start.transform.position, end.transform.position);
stretchyRoad.transform.position = start.transform.position + distance / 2 * start.transform.forward;
stretchyRoad.transform.rotation = start.transform.rotation;
stretchyRoad.transform.localScale = new Vector3(stretchyRoad.transform.localScale.x, stretchyRoad.transform.localScale.y, distance);
Start and end are two gameobjects with no mesh that are at the starting and ending positions respectively, and it's the stretchyRoad that's visible. I've tried checking Y-rotation and setting it to specific values if it's within a certain range, but that just doesn't work properly. Any suggestions?
Your answer
Follow this Question
Related Questions
How can I align axis with quaternion.fromToRotation? 1 Answer
Align 2 objets edge to edge 1 Answer
How can I keep the Ground ALIGNED with the red line in the image below 1 Answer
How can I obtain the overall rotation of multiple selected gameobjects in the unity editor? 2 Answers
How to handler rotation of a Gameobject while aligning it with normals 1 Answer