统一;随机物体运动

时间:2016-08-10 17:23:57

标签: c# object unity3d rotation translation

我正在制作一个机器人战斗游戏,我希望敌人随机移动,然后有时会向敌人移动。我希望机芯进入的代码。

else if (avoid == false)
        {
            transform.LookAt(target);
            transform.Translate(Vector3.forward * Time.deltaTime * movementSpeed);
            currentLerpTime = 0;
        }

此代码只是让AI向玩家移动,但我也希望它偶尔向随机方向移动,然后偶尔改变方向。我该怎么做?

1 个答案:

答案 0 :(得分:1)

要使其随机移动,您需要编辑的变量就是矢量。

else if (avoid == false)
        {
            transform.LookAt(target);
            transform.Translate(Vector3.forward*Time.deltaTime*Speed);
                                 // ^^^^^^
            currentLerpTime = 0;
        }

这里的问题是,当它移动时它会继续看着目标(我假设每个帧都会调用它)。在生成三个随机数方面,您可以使用C#自己完成此操作或阅读本文

https://docs.unity3d.com/ScriptReference/Random.html

这个链接真的可以帮到你。

希望这有帮助。