ShatteredReality b4c73f4888 Fix README links to asset library (#1078) 6 months ago
..
marker bac1e69164 Use static typing in all demos (#1063) 6 months ago
screenshots fcc7d5c723 Optimize PNG images using oxipng 4 years ago
2D.tscn bbe50fc9da Convert demos to Godot 4 using regular expressions in a script 2 years ago
3D.tscn 1d5184e235 Update most demos for Godot 4.0.beta10 (#782) 2 years ago
README.md b4c73f4888 Fix README links to asset library (#1078) 6 months ago
default_env.tres bbe50fc9da Convert demos to Godot 4 using regular expressions in a script 2 years ago
icon.webp 63d1cd9a60 Use 128×128 WebP icons for all demos (#885) 1 year ago
icon.webp.import 63d1cd9a60 Use 128×128 WebP icons for all demos (#885) 1 year ago
project.godot bac1e69164 Use static typing in all demos (#1063) 6 months ago

README.md

Matrix Transform

This demo project is a playground where you can visualize how transforms work.

Do not "run" this project. You are only meant to use it within the Godot editor.

For more information, see the Matrices and Transforms article.

Language: GDScript

Renderer: Compatibility

Check out this demo on the asset library: https://godotengine.org/asset-library/asset/2787

How does it work?

In both 2D and 3D, colored lines are drawn indicating the basis vectors as well as the origin vector. For 3D, this means cuboids. If you translate, rotate, scale, or shear the AxisMarker objects, you will be able to see how it affects the transform's component vectors, and all children objects are also appropriately transformed.

You are encouraged to manipulate the AxisMarker objects both in the main viewport and in the inspector. You are encouraged to duplicate them in the hierarchy and parent them any way you wish.

In 2D, red and green lines represent the X and Y axes, with blue representing the origin.

In 3D, red, green, and blue lines represent the X, Y, and Z axes, with cyan representing the origin.

One noteworthy implementation detail: to avoid jitter, the origin vector is a parent of a Node, and inherits the AxisMarker's parent's transform.

Screenshots

2D

3D