如何解决基本运动 3D 代码无法正常工作
我为运动学字符写了一些代码,只有 W 键(前进)起作用,当我按下 w 和 d 或 a 时,它开始移动但慢慢向左或向右移动。有人知道如何解决这个问题吗?
extends KinematicBody
var gravity =Vector3.DOWN * 12
var speed = 4
var jump_speed = 6
var spin = 0.1
var veLocity = Vector3()
func _physics_process(delta):
veLocity += gravity * delta
get_input()
veLocity = move_and_slide(veLocity,Vector3.UP)
func get_input():
veLocity.x = 0
veLocity.z = 0
if Input.is_action_pressed("move_UP"):
veLocity.z -= speed
if Input.is_action_pressed("move_DOWN"):
veLocity.x -= speed
if Input.is_action_pressed("strafe_Right"):
veLocity.x -= speed
if Input.is_action_pressed("strafe_Left"):
veLocity.z -= speed
func _unhandled_input(event):
if event is InputEventMouseMotion:
rotate_y(-lerp(0,spin,event.relative.x/10))
解决方法
嗯。 Python代码?块由缩进控制。您在 move_UP 之后缩进了所有运动条件,以便只有在 move_UP 处于活动状态并首先执行时才能执行它们。取消缩进 move_UP 语句下的三个“If”语句...
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。