Plush

Transform#

PlushEngine · Type index

Namespace: PlushEngine

A 3D pose: position in metres, rotation as a quaternion, scale (1 = authored size). A record: change one part with pose with { Position = p }. Yaw by θ about +Y is Quaternion.CreateFromAxisAngle(Vector3.UnitY, θ).

public sealed record Transform(Vector3 Position, Quaternion Rotation, Vector3 Scale)

Record properties#

PropertyTypeAccessConstructor default
PositionVector3get; init;required
RotationQuaternionget; init;required
ScaleVector3get; init;required

Members: Identity · Matrix

Identity#

public static Transform Identity { get; }

Initial value: new(Vector3.Zero, Quaternion.Identity, Vector3.One)

At the origin, unrotated, scale 1.

Matrix#

[System.Text.Json.Serialization.JsonIgnore]
public Matrix4x4 Matrix { get; }

The pose as a scale-rotate-translate matrix.

Source#