【问题标题】:How would I instantiate an object every 5 to 7 seconds?我将如何每 5 到 7 秒实例化一个对象?
【发布时间】:2016-03-05 10:08:25
【问题描述】:

我正在 Unity 中为 Android 开发一个跳跃游戏,我对如何每 5 秒左右实例化一个预制件感到有些困惑。我曾尝试使用while 循环,但我最终错误地创建了一个无限循环!游戏中的摄像机不断向上移动,而玩家必须在不击中任何东西并避开障碍物的情况下保持球的弹跳。我有创建障碍物预制件的代码,我只是不知道如何让它循环并在相机移动 5 秒后创建一个预制件。非常感谢任何帮助!

using UnityEngine;
using System.Collections;

public class ObjectCreate : MonoBehaviour {

    public GameObject MovingBar;
    GameObject MovingBarClone;

    void Start () {
        CreateClone();
    }

    void CreateClone() {
        MovingBarClone = Instantiate(MovingBar, transform.position, Quaternion.identity) as GameObject;
        Destroy(MovingBarClone, 15);
    }
}

【问题讨论】:

  • 您可以编写一些代码,如果它不符合您的要求,我们会提供帮助。

标签: c# unity3d instantiation


【解决方案1】:

对于 Unity 中的计时器,您使用 InvokeInvokeRepeating

InvokeRepeating( "YourRoutine", 1f, 7f );

private void YourRoutine()
 {
 }

【讨论】:

  • 这样做但不必每次都实例化一个新对象;如果可以的话,重复使用前一个
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-02-06
  • 1970-01-01
  • 2014-10-31
  • 1970-01-01
相关资源
最近更新 更多