我正在开发我的游戏Maltrov的平台化部分。我有一个脚本(如下),它应该复制一个平台5次,每个克隆都在一个新的地方。每当我把脚本附加到我的平台上,并把它作为父变量和Gameobject变量时,项目就会崩溃。有没有办法让代码工作?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Duplicateplatform : MonoBehaviour
{
public GameObject newGameObject;
public Transform parent;
Vector3 newPosition;
public Quaternion newRotation;
public float xValue = 20f;
public float yValue = 20f;
// Start is called before the first frame update
void Start()
{
for (int i = 0; i < 5; i++)
{
xValue += 20f;
yValue += 20f;
duplicateObject(xValue, yValue);
}
}
public void duplicateObject(float xValue,float yValue)
{
// create (duplicate, in a new position, at a new rotation to the parent)
newPosition = new Vector3(xValue, yValue, 0);
Instantiate(newGameObject,newPosition,newRotation,parent);
}
}
我试着将平台附加到一个空的GameObject,然后将平台的脚本附加到空的GameObject,但项目仍然崩溃。
1条答案
按热度按时间ecfsfe2w1#
我试过你的代码,它在我的代码中工作得很好。因此,问题出在别处。
去问问你的督察怎么样?
如果你得到空错误,检查你是否插入了你的新游戏对象和父对象。
如果编辑器冻结,可能是因为您将游戏对象添加为示例化对象,并且它处于无限循环中。