加力后,戈多刚体不会移动

问题描述

我刚从Unity转到Godot,一直在基于物理的玩家移动方面遇到麻烦。我用GDscript写了一个脚本,应该为刚体增加力。它没有用,所以每当我按下应该移动刚体的按钮时,我就将变量记录到控制台。变量确实记录到控制台,因此我可以得出结论,这是刚体存在的问题。这是代码

extends RigidBody
var Movement = Vector3()
var a : int = 1
func _ready():
    print(a)
func _physics_process(delta):
    Movement = Vector3(0,0)
    _get_input()
    add_force(Movement,Vector3(0,0))

func _get_input():
    if (Input.is_action_pressed("ui_right")):
        Movement.x = 1
        print(a)

解决方法

哦,我很愚蠢。力需要更像是移动。x= 100,而不是移动。x= 1。

,

我认为您需要以这种方式使用加力方法:

object.add_force(Movement,Vector3(0,0))

对于您而言,它会导致类似:

self.add_force(Movement,0))