我是团结的新手。在我的项目中,球应该在玩家中实例化
位置,它应该从玩家位置随机地移动40到120度。
我正在使用transition.forward。我的播放器一直在运行。当球员站立时,球在球员面前正确地进行。
但是当球员跑球时,球会向后移动
如何在玩家面前随机移动?像一个球
我正在使用以下代码。
transform.Translate(Vector3.forward*5f );
答案 0 :(得分:0)
如果你在角色前面产生球,有可能会被修复。由于它在玩家静止时起作用,因此当玩家移动时它可能与玩家的碰撞器发生冲突。
翻译也只是移动球,而不是给它一个速度或任何东西。你应该看看https://docs.unity3d.com/ScriptReference/Rigidbody.AddForce.html
所以,首先将球向前翻转,看看它是否在正确的位置产生。
然后按照您喜欢的方向向球的刚体添加力矢量。
类似的东西:
ball.transform.Translate(Vector3.forward*5f);
float thrust = 10;
var rb = ball.GetComponent<Rigidbody>();
rb.AddForce(transform.forward * thrust);