Contents

namespace

SushiEngine::placeholder

Holds the stand-in value types until SushiBLAS owns them.

Declared in
engine/foundation/core/include/SushiEngine/core/blas_placeholder.hpp

See also

engine/foundation/core/include/README.md

Contains

Typedefs

Float

Names the scalar element type of the boundary types, always double.

Vector3

The boundary 3-component vector: Vector3T fixed to Float.

Quaternion

The boundary unit quaternion: QuaternionT fixed to Float.

Functions

dot

Dot product of two vectors.

cross

Right-handed cross product a x b.

length

Euclidean length of a vector.

normalize

Unit vector in the direction of v; returns v unchanged if degenerate.

quaternion_axis_angle

A quaternion of angle radians about unit axis axis.

mul

Hamilton product a * b (apply b then a).

conjugate

The conjugate (inverse, for unit quaternions) of q.

rotate

Rotates v by unit quaternion q.

to_floating_origin

Decomposes an absolute world position into sector + local offset.

from_floating_origin

Recomposes a sector + local offset into an absolute world position.

translation

A translation matrix by t.

scaling

A non-uniform scale matrix by s.

perspective

Builds a right-handed reverse-Z perspective projection with an infinite far plane.

look_at

A right-handed view matrix looking from eye toward center.

matrix4_from_quaternion

The rotation matrix equivalent to unit quaternion q.

compose_transform

Composes a translation-rotation-scale model matrix.

fold_range

Folds [first, last) in ascending index order, starting from the identity.

lerp

Componentwise linear interpolation of two vectors.

nlerp

Interpolates two rotations along the short arc and normalises the linear blend.

slerp

Interpolates two rotations at constant angular velocity along the short arc.

quaternion_from_matrix

Returns the unit quaternion equivalent of a rotation matrix.

affine_inverse

Returns the inverse of an affine matrix, or the identity when it is singular.

decompose_transform

Decomposes an affine matrix into translation, rotation and scale.