Skip to content

Conversation

@RespiteFromReality
Copy link

PR addresses #9159 and additional problems I found in the page.

Page: https://docs.godotengine.org/en/stable/tutorials/3d/using_transforms.html

First PR, so apologies for any mistakes or lack of contributing requirements.

Could really use a sanity check on the page examples, because the more I re-read the page, the more I felt like I was missing something, but when testing in engine, the existing examples do not work correctly.

Changes

  1. Applied neonmoe's (see issue) updated camera image commit as a patch from their fork, as they never created a PR. (I can remove it or replace it with my own if preferred.)
  2. Bullet example
    • Using linear_velocity from Rigidbody3D in both GDScript and C#.
    • Fixing variable capitalization in C#.
    • Added comments for Node type used.
  3. Jump example
    • Fixing variable capitalization in C#.
    • Added comments for Node type used.
  4. Text changes
    • Removed confusing forward direction comment.
    • Making axis reminders consistent between examples.
  5. Strafe Left example
    • Using velocity from CharacterBody3D in both GDScript and C# instead of translate_object_local. The current example doesn't strafe left properly, but I don't really know why.
    • Added move_and_slide() to stay consistent with CharacterBody3D use.
    • Added comments for Node type used.
  6. FPS Camera example
    • The rotation in this example is inverted on both axis, so decided to subtract it to make it work how FPS camera rotation should work.

neonmoe and others added 6 commits October 20, 2025 14:44
- Using -Z instead of Z to push bullet forward.
- Fixing C# capitalization
- This example does not correctly strafe left based on rotation.
- This example rotates the camera inverted on both axis.
if (Input.IsActionJustPressed("jump"))
{
velocity.Y = JumpSpeed;
Velocity.Y = JumpSpeed;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unrelated to this PR but this is not supported, see here

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should work now.

@AThousandShips AThousandShips added bug area:manual Issues and PRs related to the Manual/Tutorials section of the documentation topic:3d labels Oct 20, 2025
@AThousandShips AThousandShips requested a review from a team October 22, 2025 09:20
Copy link
Member

@Calinou Calinou left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me.

I'd appreciate a cursory review from @aaronfranke to make sure the coordinate space fixes are correct.

@aaronfranke
Copy link
Member

Please read this to understand the conventions and why some things may be confused between them: https://docs.godotengine.org/en/stable/tutorials/assets_pipeline/importing_3d_scenes/model_export_considerations.html#d-asset-direction-conventions

For user code in Godot, we need to be consistent, preferably with the camera and global forward, and so this PR is correct.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:manual Issues and PRs related to the Manual/Tutorials section of the documentation bug topic:3d

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants