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?

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

    Not shown in the code here for simplicity, but in the project I added a little bit of yaw drift when banking.

    I’m sure there’s a more accurate way to simulate all this. Just messin around.

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

      Now for no good reason I added flaps that rotate with the controls. Definitely feature creepin. I’m out! Good luck op!