Transition Forward正在倒退

时间:2018-03-09 12:01:33

标签: c# unity3d

我是团结的新手。在我的项目中,球应该在玩家中实例化

位置,它应该从玩家位置随机地移动40到120度。

我正在使用transition.forward。我的播放器一直在运行。当球员站立时,球在球员面前正确地进行。

但是当球员跑球时,球会向后移动

如何在玩家面前随机移动?像一个球

我正在使用以下代码。

transform.Translate(Vector3.forward*5f );

1 个答案:

答案 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);