在 3d fps 教程 godot 文档中,靠近底部的一行代码已过时。我是用 godot 编码的新手,我对 java 脚本有一点经验,但仅此而已。代码行如下所示。
VVV
vel = move_and_slide(vel, Vector3(0, 1, 0), 0.05, 4, deg2rad(MAX_SLOPE_ANGLE))
我知道要修复 deg2rad 部分,它应该是 deg_to_rad,但是一旦我这样做,它就会给我这个错误。
“move_and_slide()”调用的参数太多。预计最多 0 个,但收到了 5 个。
我不知道该尝试什么,因为就像我说的,我是使用 godot 进行编码的新手,我了解一点 GDScript,但不足以自行解决这个问题。
正如错误消息所示,自 Godot 4 以来,
move_and_slide()
不再接受任何参数。相反,您应该分配 CharacterBody3D
的速度属性,然后调用 move_and_slide()
。
我建议您查看资源库中的一些示例项目,您可能会在其中找到如下代码:
var input_dir := Input.get_vector("move_left", "move_right", "move_forward", "move_backward")
var direction := input_dir.rotated(-global_rotation.y)
velocity.x = lerp(velocity.x, direction.x * speed, accel * delta)
velocity.z = lerp(velocity.z, direction.y * speed, accel * delta)
velocity.y -= gravity * delta
move_and_slide()