Unity3d 使用方向向量沿某个方向移动对象

Unity3d 使用方向向量沿某个方向移动对象,unity3d,unityscript,Unity3d,Unityscript,好的,我有一个游戏,有物体漂浮在空中。我想通过将漂浮的物体推向与风相同的方向来模拟风 我一直在网上搜索,但我没有找到关于如何通过(定向)向量移动对象而不是将其移动到空间中某个点的信息 Vector.lerp、translate等都使用一个参考点,其中,我想使用一个长度为1的方向向量,从对象的中心到它想要的方向。这在内置的正向向量中是可能的,但我想这样做,即使对象本身在旋转 有人有什么想法或方向吗 PS:所有对象的方向向量应平行。到目前为止,我唯一的想法是通过风矢量设置一个点,并根据每个对象对其进

好的,我有一个游戏,有物体漂浮在空中。我想通过将漂浮的物体推向与风相同的方向来模拟风

我一直在网上搜索,但我没有找到关于如何通过(定向)向量移动对象而不是将其移动到空间中某个点的信息

Vector.lerp、translate等都使用一个参考点,其中,我想使用一个长度为1的方向向量,从对象的中心到它想要的方向。这在内置的正向向量中是可能的,但我想这样做,即使对象本身在旋转

有人有什么想法或方向吗

PS:所有对象的方向向量应平行。到目前为止,我唯一的想法是通过风矢量设置一个点,并根据每个对象对其进行调整。但对于这样一个愚蠢的任务来说,这似乎有点复杂和麻烦


谢谢大家!

这只是向对象的位置(或速度,如果您想要更逼真的话)添加一个向量的问题


第二个选项要求游戏对象有一个刚体组件

我认为Transform有一个名为Translate的成员,它将平移作为一个方向来处理:

myobject.transform.Translate(2,0,0);
这会将对象向右移动2个单位


编辑:在这里

啊,是的,我忘记了这件事,真是太愚蠢了。我想得太多了。如果这解决了你的问题,我接受他的回答。这是表达感谢的正确方式。
rigidbody.velocity += wind * Time.deltaTime
myobject.transform.Translate(2,0,0);