Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

# Transform3D¶

A 3×4 matrix representing a 3D transformation.

## Description¶

A 3×4 matrix (3 rows, 4 columns) used for 3D linear transformations. It can represent transformations such as translation, rotation, and scaling. It consists of a basis (first 3 columns) and a Vector3 for the origin (last column).

For a general introduction, see the Matrices and transforms tutorial.

Note

There are notable differences when using this API with C#. See C# API differences to GDScript for more information.

## Properties¶

 Basis basis Basis(1, 0, 0, 0, 1, 0, 0, 0, 1) Vector3 origin Vector3(0, 0, 0)

## Constructors¶

 Transform3D Transform3D Transform3D(from: Transform3D) Transform3D Transform3D(basis: Basis, origin: Vector3) Transform3D Transform3D(from: Projection) Transform3D Transform3D(x_axis: Vector3, y_axis: Vector3, z_axis: Vector3, origin: Vector3)

## Methods¶

 Transform3D affine_inverse() const Transform3D interpolate_with(xform: Transform3D, weight: float) const Transform3D inverse() const bool is_equal_approx(xform: Transform3D) const bool is_finite() const Transform3D looking_at(target: Vector3, up: Vector3 = Vector3(0, 1, 0), use_model_front: bool = false) const Transform3D orthonormalized() const Transform3D rotated(axis: Vector3, angle: float) const Transform3D rotated_local(axis: Vector3, angle: float) const Transform3D scaled(scale: Vector3) const Transform3D scaled_local(scale: Vector3) const Transform3D translated(offset: Vector3) const Transform3D translated_local(offset: Vector3) const

## Operators¶

 bool operator !=(right: Transform3D) AABB operator *(right: AABB) PackedVector3Array operator *(right: PackedVector3Array) Plane operator *(right: