繁体   English   中英

Unity 3D,transform.position 不适用于 instatiate 对象

[英]Unity 3D, transform.position not working on instatiate object

我创建了一个简单的脚本来实例化一个多维数据集。 我需要知道它的位置(x 和 z)。 但是,当脚本实例化立方体时,它的 x 和 z 位置为 0。我做错了什么?

实例化脚本示例:

public GameObject cube;
float xPos, zPos;
int randomPos;

void Start()
{
    randomPos = Random.Range(10,20);
    Instantiate(cube, new Vector3(1,0,randomPos),Quaternion.identity);

    xPos = cube.transform.position.x;
    zPos = cube.transform.position.z;
}

这是一个例子,我需要知道“cube.transform.position.x and z”但输出总是零谢谢大家

在此处输入图片说明

在此处输入图片说明

您必须获得的不是立方体的位置,而是来自Instantiate创建的新立方体的位置。 Instantiate克隆对象原始并返回克隆。

void Start(){

randomPos = Random.Range(10,20);
var newCube = Instantiate(cube, new Vector3(1,0,randomPos),Quaternion.identity);

xPos = newCube.transform.position.x;
zPos = newCube.transform.position.z;

}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM