Having trouble with 3D rotations - eviltoast

I’m trying to make a 3d flight controller with a more arcade feel (think Ace Combat or Rogue Squadron). I’m somewhat new to working in 3d in Godot though and I don’t really understand what methods I should be using to achieve this.

I want up and down to control pitch and left and right to be something of a hybrid roll/yaw. I’m setting direction to -transform.basis.z and multiplying that by speed, but when I use rotate_x() with the pitch, the plane itself rotates, but I only move flatly across the world plane rather than climbing up or down as I’m attempting to achieve.

What am I missing here?

  • Rodeo@lemmy.ca
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    Where is the call to move_and_collide? There’s no code here that will translate the position.

    • Cid@lemmy.sdf.org
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      1 year ago

      True. Just showing roll and pitch. This is not op’s code… oh perhaps that’s the thing op really needs to see though? I’ll update the example to show it…