【发布时间】:2016-08-21 16:29:30
【问题描述】:
我已经搜索了很多,但找不到解决方案,所以请帮忙。基本上,我要做的是正如您在简化的脚本中看到的那样,我制作了一个数组(它有三个项目,每个项目都是父项它的子对象)然后随机实例化这些项目。我想要的是第一个实例应该发生在场景中已经存在的对象之上,但是第二个对象应该在前一个实例化对象之上实例化,第三个对象应该在第二个实例之上实例化和很快。现在我想我想要的是一种方法来确定是否实例化(如果这是不可能的,那么我们可以将实例化放在一个单独的函数中并检查是否发生了这种情况,但我不明白如何放置其中任何一个两次检查 if 条件) 是否发生,这是 if 语句的条件,如果是,则我需要对发生的最后一个实例化的引用,以便我可以将其与 lastRedgeSet 相等。如果有的话,请提供帮助并提出更好的方法 `
public GameObject[] RedgeSets;
private GameObject LastRedgeSet;
public GameObject FixedRedges;
private Object myist;
void Start () {
LastRedgeSet = FixedRedges;
}
void Update () {
// if(instantiate happened or no Condition here){
//LatRedgeSet = (refrence to last instantiated object required here) }
Vector3 LastRedgeSetPos = LastRedgeSet.transform.position;
Vector3 addheight = new Vector3 (0, 5, 0);
if (Input.GetKeyDown (KeyCode.Z)) {
Instantiate (RedgeSets [UnityEngine.Random.Range (0, 3)], LastRedgeSetPos + addheight, Quaternion.identity);
}
`
【问题讨论】:
标签: c# arrays unity3d scripting instantiation