- Home /
GameObject won't move to Transform Position
I'm attempting to map spheres to joint positions, and so far I've just started with the head. I've been able to get the Vector3 of the head and floor the values, and I've successfully instantiated the sphere, but when it comes to actually moving the sphere to the head position, I'm unsuccessful. When I write the sphere's position to the log with each update, the position is correct--that is, it'll say, for example (-15, -115, 106) as it's supposed to, but as soon as I run the scene, the sphere itself either remains at the origin, or disappears. Any advice? public class returnJoints : MonoBehaviour
{
GameObject sphereHead;
void Awake()
{
sphereHead = GameObject.CreatePrimitive(PrimitiveType.Sphere);
sphereHead.renderer.material.color = Color.blue;
sphereHead.transform.localScale = new Vector3(.25f, .25f, .25f);
}
void Update()
{
Omek.JointID jointID = Omek.JointID.head;
ReturnCode rc;
// get the head position in world space
OmekFramework.Common.BasicTypes.SpaceTypes.Vector3 worldPosition;
rc = BeckonData.Persons[0].Skeleton[jointID].Position.World.Get(out worldPosition);
//floor the vector3 values
float headX = Mathf.Floor(worldPosition.x);
float headY = Mathf.Floor(worldPosition.y);
float headZ = Mathf.Floor(worldPosition.z);
Vector3 headPos = new Vector3(headX, headY, headZ);
//place a sphere at the head's position
Vector3 headSpherePos = new Vector3(headX, headY, headZ);
sphereHead.transform.position = headSpherePos;
//Debug.Log("head " + worldPosition);
Debug.Log("head (floor): " + headPos);
Debug.Log("sphere position (head): " + sphereHead.transform.position);
}
}
Your answer
Follow this Question
Related Questions
How to make an object go to pre-seted position in world 1 Answer
Set Game Object Position to Sides of a Camera 1 Answer
Resetting transform position after build 1 Answer
Problem with transform 2 Answers
How can I defer the recalculation of child transforms whilst modifying the parent transform? 0 Answers