我正在Unity(2018.4.9f1)中的一个项目上工作,我想在启动游戏时生成Objects。因此,我在Visual Studios中尝试了此代码(如下所示),但是尽管我确定它应该可以工作,但事实并非如此。它甚至没有显示任何错误。我将代码附加到游戏对象上,并将bool isPlayerGrounded设置为true,将Spawn Counter设置为30,但是当我开始游戏时,什么也没发生。
任何想法我可能做错了什么? 预先感谢!
public class Spawner : MonoBehaviour
{
public int spawnCounter;
public bool isPlayerGrounded = true;
public void Start()
{
void Spawning()
{
for (int i = 0; i < spawnCounter; i++)
while(isPlayerGrounded)
{
GameObject newGo = new GameObject();
Debug.Log("Something spawned" + spawnCounter);
}
}
}
}
答案 0 :(得分:0)
运行游戏时没有任何反应的原因是因为您没有实例化创建的GameObject。
执行GameObject newGo = new GameObject();
后,您需要执行以下操作:
Instantiate(newGo, Vector3.Zero, Quaternion.Identity);
这会将新创建的对象生成到场景中。
我建议您阅读本文档以进一步了解实例化方法。
https://docs.unity3d.com/ScriptReference/Object.Instantiate.html