通过计时器或其他东西产生对象。 c#unity 3D

时间:2017-06-13 21:59:12

标签: c# unity3d unityscript

我想在我的位置列表中生成对象但是使用计时器!

因为我有很多物体,所以当我产生它们时需要时间来产生,所以我们需要每隔1-2秒用定时器产生一个物体。

或者,创建int并且他的值为MyList.count 当计数和我的清单包含所有对象时。

当list = Null中的对象将从我们的列表中自动删除,因此我们的列表计数将减少,对于每1个减少spawn 1对象,

我的想法是:我在FPS游戏中工作,当我一次性生成所有代理时,我需要有任务的敌人,这需要很长时间才能运行。

所以我希望解决方案通过在我完成上一次任务时产生任务代理来解决这个问题。

任何人都有另一个想法让我的游戏能够与很多代理商一起快速运作?

1 个答案:

答案 0 :(得分:0)

我在游戏中做了类似的事情。我想在计时器上生成平台,所以我使用了DeltaTime并制作了一个只在计时器用完时才会产生平台的循环。对于你我不建议你使用随机发生器,因为你希望它每两秒产生一次。请参阅下面的实施:

    /**
     * Use this for initialization
     */
    void Start () {
        waitingTime = Random.Range(1f, 1.35f);
        boxCollider = GetComponent<BoxCollider2D>();
    }

    /**
     * Update is called once per frame
     */
    void Update () {
        timer += Time.deltaTime;

        if (timer > waitingTime)
        {
            createPlatform();
            timer = -20;
        }

这很简单。在创建对象时,启动计时器。当计时器结束时,对象会生成一个新的自身,然后创建另一个,依此类推。另一个建议是将计时器放在某个外部对象上,这样您就可以更轻松地计算创建的对象数量。如果您还有其他问题,请与我们联系!

相关问题