基于它在 Godot 中的旋转变换空间节点

问题描述

我有一个空间节点,有一个相机作为它的子节点

当按下鼠标右键时,它的 Y 旋转会根据 mouseMotion.x 输入而变化

var acceleration = 10
var hRotation

func _physics_process(delta):

    if m2_down:
        hRotation += -mouseMotion.x

    rotation_degrees.y = lerp(rotation_degrees.y,hRotation,delta * acceleration)

完美运行 但是现在我需要沿着它的本地转换节点,当按下左键时,也基于 mouseMotion

if m1_down:
    destination.x += mouseMotion.x
    destination.z += mouseMotion.y

global_transform.origin = lerp(transform.origin,destination,acceleration * delta)

代码运行直到节点旋转,它仍然在全局方向上移动

我在网上找到了一个解决方案,使用 move_and_slide() 函数,它是一个刚体节点.. 我真的需要节点保持空间并由 mouseMotion 驱动

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)