5 Raymath
(require raylib/raymath/unsafe) | package: raylib |
Manually written bindings for Raylib’s Raymath module.
These are marked as unsafe because safety cannot be guaranteed, but you are very unlikely to experience undefined behaviour using this.
These are converted to and from flvector?s of the given length.
procedure
(Remap value inputStart inputEnd outputStart outputEnd) → _float value : _float inputStart : _float inputEnd : _float outputStart : _float outputEnd : _float
procedure
(FloatEquals x y) → _int
x : _float y : _float
procedure
(Vector2Zero) → _Vector2
procedure
(Vector2One) → _Vector2
procedure
(Vector2Add v1 v2) → _Vector2
v1 : _Vector2 v2 : _Vector2
procedure
(Vector2AddValue v add) → _Vector2
v : _Vector2 add : _float
procedure
(Vector2Subtract v1 v2) → _Vector2
v1 : _Vector2 v2 : _Vector2
procedure
(Vector2SubtractValue v sub) → _Vector2
v : _Vector2 sub : _float
procedure
(Vector2Length v) → _float
v : _Vector2
procedure
(Vector2LengthSqr v) → _float
v : _Vector2
procedure
(Vector2DotProduct v1 v2) → _float
v1 : _Vector2 v2 : _Vector2
procedure
(Vector2Distance v1 v2) → _float
v1 : _Vector2 v2 : _Vector2
procedure
(Vector2DistanceSqr v1 v2) → _float
v1 : _Vector2 v2 : _Vector2
procedure
(Vector2Angle v1 v2) → _float
v1 : _Vector2 v2 : _Vector2
procedure
(Vector2LineAngle start end) → _float
start : _Vector2 end : _Vector2
procedure
(Vector2Scale v scale) → _Vector2
v : _Vector2 scale : _float
procedure
(Vector2Multiply v1 v2) → _Vector2
v1 : _Vector2 v2 : _Vector2
procedure
(Vector2Negate v) → _Vector2
v : _Vector2
procedure
(Vector2Divide v1 v2) → _Vector2
v1 : _Vector2 v2 : _Vector2
procedure
(Vector2Normalize v) → _Vector2
v : _Vector2
procedure
(Vector2Transform v mat) → _Vector2
v : _Vector2 mat : _Matrix
procedure
(Vector2Lerp v1 v2 amount) → _Vector2
v1 : _Vector2 v2 : _Vector2 amount : _float
procedure
(Vector2Reflect v normal) → _Vector2
v : _Vector2 normal : _Vector2
procedure
(Vector2Min v1 v2) → _Vector2
v1 : _Vector2 v2 : _Vector2
procedure
(Vector2Max v1 v2) → _Vector2
v1 : _Vector2 v2 : _Vector2
procedure
(Vector2Rotate v angle) → _Vector2
v : _Vector2 angle : _float
procedure
(Vector2MoveTowards v target maxDistance) → _Vector2
v : _Vector2 target : _Vector2 maxDistance : _float
procedure
(Vector2Invert v) → _Vector2
v : _Vector2
procedure
(Vector2Clamp v min max) → _Vector2
v : _Vector2 min : _Vector2 max : _Vector2
procedure
(Vector2ClampValue v min max) → _Vector2
v : _Vector2 min : _float max : _float
procedure
(Vector2Equals p q) → _int
p : _Vector2 q : _Vector2
procedure
(Vector2Refract v n r) → _Vector2
v : _Vector2 n : _Vector2 r : _float
procedure
(Vector3Zero) → _Vector3
procedure
(Vector3One) → _Vector3
procedure
(Vector3Add v1 v2) → _Vector3
v1 : _Vector3 v2 : _Vector3
procedure
(Vector3AddValue v add) → _Vector3
v : _Vector3 add : _float
procedure
(Vector3Subtract v1 v2) → _Vector3
v1 : _Vector3 v2 : _Vector3
procedure
(Vector3SubtractValue v sub) → _Vector3
v : _Vector3 sub : _float
procedure
(Vector3Scale v scalar) → _Vector3
v : _Vector3 scalar : _float
procedure
(Vector3Multiply v1 v2) → _Vector3
v1 : _Vector3 v2 : _Vector3
procedure
(Vector3CrossProduct v1 v2) → _Vector3
v1 : _Vector3 v2 : _Vector3
procedure
(Vector3Perpendicular v) → _Vector3
v : _Vector3
procedure
(Vector3Length v) → _float
v : _Vector3
procedure
(Vector3LengthSqr v) → _float
v : _Vector3
procedure
(Vector3DotProduct v1 v2) → _float
v1 : _Vector3 v2 : _Vector3
procedure
(Vector3Distance v1 v2) → _float
v1 : _Vector3 v2 : _Vector3
procedure
(Vector3DistanceSqr v1 v2) → _float
v1 : _Vector3 v2 : _Vector3
procedure
(Vector3Angle v1 v2) → _float
v1 : _Vector3 v2 : _Vector3
procedure
(Vector3Negate v) → _Vector3
v : _Vector3
procedure
(Vector3Divide v1 v2) → _Vector3
v1 : _Vector3 v2 : _Vector3
procedure
(Vector3Normalize v) → _Vector3
v : _Vector3
procedure
(Vector3Project v1 v2) → _Vector3
v1 : _Vector3 v2 : _Vector3
procedure
(Vector3Reject v1 v2) → _Vector3
v1 : _Vector3 v2 : _Vector3
procedure
(Vector3OrthoNormalize v1 v2) → _void
v1 : (_pointer-to_Vector3) v2 : (_pointer-to_Vector3)
procedure
(Vector3Transform v mat) → _Vector3
v : _Vector3 mat : _Matrix
procedure
(Vector3RotateByQuaternion v q) → _Vector3
v : _Vector3 q : _Quaternion
procedure
(Vector3RotateByAxisAngle v axis angle) → _Vector3
v : _Vector3 axis : _Vector3 angle : _float
procedure
(Vector3MoveTowards v target maxDistance) → _Vector3
v : _Vector3 target : _Vector3 maxDistance : _float
procedure
(Vector3Lerp v1 v2 amount) → _Vector3
v1 : _Vector3 v2 : _Vector3 amount : _float
procedure
(Vector3CubicHermite v1 tangent1 v2 tangent2 amount) → _Vector3 v1 : _Vector3 tangent1 : _Vector3 v2 : _Vector3 tangent2 : _Vector3 amount : _float
procedure
(Vector3Reflect v normal) → _Vector3
v : _Vector3 normal : _Vector3
procedure
(Vector3Min v1 v2) → _Vector3
v1 : _Vector3 v2 : _Vector3
procedure
(Vector3Max v1 v2) → _Vector3
v1 : _Vector3 v2 : _Vector3
procedure
(Vector3Unproject source projection view) → _Vector3
source : _Vector3 projection : _Matrix view : _Matrix
procedure
(Vector3ToFloatV v) → _float3
v : _Vector3
procedure
(Vector3Invert v) → _Vector3
v : _Vector3
procedure
(Vector3Clamp v min max) → _Vector3
v : _Vector3 min : _Vector3 max : _Vector3
procedure
(Vector3ClampValue v min max) → _Vector3
v : _Vector3 min : _float max : _float
procedure
(Vector3Equals p q) → _int
p : _Vector3 q : _Vector3
procedure
(Vector3Refract v n r) → _Vector3
v : _Vector3 n : _Vector3 r : _float
procedure
(Vector4Zero) → _Vector4
procedure
(Vector4One) → _Vector4
procedure
(Vector4Add v1 v2) → _Vector4
v1 : _Vector4 v2 : _Vector4
procedure
(Vector4AddValue v add) → _Vector4
v : _Vector4 add : _float
procedure
(Vector4Subtract v1 v2) → _Vector4
v1 : _Vector4 v2 : _Vector4
procedure
(Vector4SubtractValue v add) → _Vector4
v : _Vector4 add : _float
procedure
(Vector4Length v) → _float
v : _Vector4
procedure
(Vector4LengthSqr v) → _float
v : _Vector4
procedure
(Vector4DotProduct v1 v2) → _float
v1 : _Vector4 v2 : _Vector4
procedure
(Vector4Distance v1 v2) → _float
v1 : _Vector4 v2 : _Vector4
procedure
(Vector4DistanceSqr v1 v2) → _float
v1 : _Vector4 v2 : _Vector4
procedure
(Vector4Scale v scale) → _Vector4
v : _Vector4 scale : _float
procedure
(Vector4Multiply v1 v2) → _Vector4
v1 : _Vector4 v2 : _Vector4
procedure
(Vector4Negate v) → _Vector4
v : _Vector4
procedure
(Vector4Divide v1 v2) → _Vector4
v1 : _Vector4 v2 : _Vector4
procedure
(Vector4Normalize v) → _Vector4
v : _Vector4
procedure
(Vector4Min v1 v2) → _Vector4
v1 : _Vector4 v2 : _Vector4
procedure
(Vector4Max v1 v2) → _Vector4
v1 : _Vector4 v2 : _Vector4
procedure
(Vector4Lerp v1 v2 amount) → _Vector4
v1 : _Vector4 v2 : _Vector4 amount : _float
procedure
(Vector4MoveTowards v target maxDistance) → _Vector4
v : _Vector4 target : _Vector4 maxDistance : _float
procedure
(Vector4Invert v) → _Vector4
v : _Vector4
procedure
(Vector4Equals p q) → _int
p : _Vector4 q : _Vector4
procedure
(MatrixDeterminant mat) → _float
mat : _Matrix
procedure
(MatrixTrace mat) → _float
mat : _Matrix
procedure
(MatrixTranspose mat) → _Matrix
mat : _Matrix
procedure
(MatrixInvert mat) → _Matrix
mat : _Matrix
procedure
procedure
(MatrixSubtract left right) → _Matrix
left : _Matrix right : _Matrix
procedure
(MatrixMultiply left right) → _Matrix
left : _Matrix right : _Matrix
procedure
(MatrixTranslate x y z) → _Matrix
x : _float y : _float z : _float
procedure
(MatrixRotate axis angle) → _Matrix
axis : _Vector3 angle : _float
procedure
(MatrixRotateX angle) → _Matrix
angle : _float
procedure
(MatrixRotateY angle) → _Matrix
angle : _float
procedure
(MatrixRotateZ angle) → _Matrix
angle : _float
procedure
(MatrixRotateXYZ angle) → _Matrix
angle : _Vector3
procedure
(MatrixRotateZYX angle) → _Matrix
angle : _Vector3
procedure
(MatrixScale x y z) → _Matrix
x : _float y : _float z : _float
procedure
(MatrixFrustum left right bottom top nearPlane farPlane) → _Matrix left : _double right : _double bottom : _double top : _double nearPlane : _double farPlane : _double
procedure
(MatrixPerspective fovY aspect nearPlane farPlane) → _Matrix fovY : _double aspect : _double nearPlane : _double farPlane : _double
procedure
(MatrixOrtho left right bottom top nearPlane farPlane) → _Matrix left : _double right : _double bottom : _double top : _double nearPlane : _double farPlane : _double
procedure
(MatrixLookAt eye target up) → _Matrix
eye : _Vector3 target : _Vector3 up : _Vector3
procedure
(MatrixToFloatV mat) → _float16
mat : _Matrix
procedure
(QuaternionAdd q1 q2) → _Quaternion
q1 : _Quaternion q2 : _Quaternion
procedure
(QuaternionAddValue q add) → _Quaternion
q : _Quaternion add : _float
procedure
(QuaternionSubtract q1 q2) → _Quaternion
q1 : _Quaternion q2 : _Quaternion
procedure
(QuaternionSubtractValue q sub) → _Quaternion
q : _Quaternion sub : _float
procedure
procedure
(QuaternionLength q) → _float
q : _Quaternion
procedure
q : _Quaternion
procedure
(QuaternionInvert q) → _Quaternion
q : _Quaternion
procedure
(QuaternionMultiply q1 q2) → _Quaternion
q1 : _Quaternion q2 : _Quaternion
procedure
(QuaternionScale q mul) → _Quaternion
q : _Quaternion mul : _float
procedure
(QuaternionDivide q1 q2) → _Quaternion
q1 : _Quaternion q2 : _Quaternion
procedure
(QuaternionLerp q1 q2 amount) → _Quaternion
q1 : _Quaternion q2 : _Quaternion amount : _float
procedure
(QuaternionNlerp q1 q2 amount) → _Quaternion
q1 : _Quaternion q2 : _Quaternion amount : _float
procedure
(QuaternionSlerp q1 q2 amount) → _Quaternion
q1 : _Quaternion q2 : _Quaternion amount : _float
procedure
(QuaternionCubicHermiteSpline q1 outTangent1 q2 inTangent2 t) → _Quaternion q1 : _Quaternion outTangent1 : _Quaternion q2 : _Quaternion inTangent2 : _Quaternion t : _float
procedure
(QuaternionFromVector3ToVector3 from to) → _Quaternion
from : _Vector3 to : _Vector3
procedure
(QuaternionFromMatrix mat) → _Quaternion
mat : _Matrix
procedure
(QuaternionToMatrix q) → _Matrix
q : _Quaternion
procedure
(QuaternionFromAxisAngle axis angle) → _Quaternion
axis : _Vector3 angle : _float
procedure
(QuaternionToAxisAngle q outAxis outAngle) → _void
q : _Quaternion outAxis : (_pointer-to_Vector3) outAngle : (_pointer-to_float)
procedure
(QuaternionFromEuler pitch yaw roll) → _Quaternion
pitch : _float yaw : _float roll : _float
procedure
(QuaternionToEuler q) → _Vector3
q : _Quaternion
procedure
(QuaternionTransform q mat) → _Quaternion
q : _Quaternion mat : _Matrix
procedure
(QuaternionEquals p q) → _int
p : _Quaternion q : _Quaternion
procedure
(MatrixDecompose mat translation rotation scale) → _void mat : _Matrix translation : (_pointer-to_Vector3) rotation : (_pointer-to_Quaternion) scale : (_pointer-to_Vector3)