Skip to content

Transform

4x4 transformation matrix representing position, rotation, and scale

Example:

javascript
// Create with specific values
var t = Transform({
    position: Vector3(0, 1, 0),
    rotation: Rotation(0, Math.PI, 0),
    scale: Vector3(1, 1, 1)
});

// Get entity's transform
var worldT = entity.worldTransform;

// Combine transforms
var combined = Transform.multiply(parentT, childT);

// Transform a point
var worldPoint = Transform.transformPoint(entity.transform, localPoint);

Properties

position

rotation

scale

Methods

create()

javascript
create(): Transform

Create identity transform (position: 0,0,0, rotation: identity, scale: 1,1,1)

Returns: Transform

createWith()

javascript
createWith(position: Vector3, rotation: Rotation, scale: Vector3): Transform

Create transform with specific values

Parameters:

Returns: Transform

inverse()

javascript
inverse(transform: Transform): Transform

Get inverse transform

Parameters:

Returns: Transform

inverse()

javascript
inverse(): Transform

Get inverse transform

Returns: Transform

multiply()

javascript
multiply(t1: Transform, t2: Transform): Transform

Multiply two transforms (combine transformations)

Parameters:

Returns: Transform

multiply()

javascript
multiply(other: Transform): Transform

Multiply with another transform

Parameters:

Returns: Transform

transformPoint()

javascript
transformPoint(transform: Transform, point: Vector3): Vector3

Transform a point by this matrix

Parameters:

Returns: Vector3

transformPoint()

javascript
transformPoint(point: Vector3): Vector3

Transform a point

Parameters:

  • point (Vector3) - Point to transform

Returns: Vector3

transformVector()

javascript
transformVector(transform: Transform, vector: Vector3): Vector3

Transform a direction vector (ignores position)

Parameters:

Returns: Vector3

transformVector()

javascript
transformVector(vector: Vector3): Vector3

Transform a vector

Parameters:

  • vector (Vector3) - Vector to transform

Returns: Vector3