Skip to content
Reece Sheppard edited this page Jun 21, 2021 · 1 revision

Math

Mathematical Types

Class Name Type Components
Vector2 2-Component Vector X: float
Y: float
Vector3 3-Component Vector X: float
Y: float
Z: float
Vector4 4-Component Vector X: float
Y: float
Z: float
W: float
Quaternion 4D Complex Number i: float
j: float
k: float
r: float
EulerAngles 3 Rotational Axes Roll: float
Pitch: float
Yaw: float
Transform Composite of Vector4 and Quaternion position: Vector4
orientation: Quaternion
Matrix 4x4 Matrix composed of 4 Vector4's X: Vector4
Y: Vector4
Z: Vector4
W: Vector4

Scalar Functions

// Scripted
public static func Pi() -> Float
public static func HalfPi() -> Float
public static func SgnF(a: Float) -> Float
public static func ModF(a: Float, b: Float) -> Float
public static func FloatIsEqual(f: Float, to: Float) -> Bool
public static func RoundMath(f: Float) -> Int32
public static func RoundTo(f: Float, decimal: Int32) -> Float
public static func ProportionalClampF(inMin: Float, inMax: Float, v: Float, outMin: Float, outMax: Float) -> Float

// Natives
public static native func Abs(a: Int32) -> Int32
public static native func AbsF(a: Float) -> Float
public static native func CeilF(a: Float) -> Int32
public static native func Clamp(v: Int32, min: Int32, max: Int32) -> Int32
public static native func ClampF(v: Float, min: Float, max: Float) -> Float
public static native func ExpF(a: Float) -> Float
public static native func FloorF(a: Float) -> Int32
public static native func LerpF(alpha: Float, a: Float, b: Float, opt clamp: Bool) -> Float
public static native func LogF(a: Float) -> Float
public static native func Max(a: Int32, b: Int32) -> Int32
public static native func MaxF(a: Float, b: Float) -> Float
public static native func Min(a: Int32, b: Int32) -> Int32
public static native func MinF(a: Float, b: Float) -> Float
public static native func PowF(a: Float, x: Float) -> Float
public static native func RandDifferent(lastValue: Int32, range: Int32) -> Int32
public static native func RandF() -> Float
public static native func RandNoiseF(seed: Int32, max: Float, opt min: Float) -> Float
public static native func RandRange(min: Int32, max: Int32) -> Int32
public static native func RandRangeF(min: Float, max: Float) -> Float
public static native func ReinterpretIntAsFloat(a: Int32) -> Float
public static native func RoundF(a: Float) -> Int32
public static native func SqrF(a: Float) -> Float
public static native func SqrtF(a: Float) -> Float

Trigonometric Functions

public static native func CosF(a: Float) -> Float
public static native func SinF(a: Float) -> Float
public static native func TanF(a: Float) -> Float

public static native func AcosF(a: Float) -> Float
public static native func AsinF(a: Float) -> Float
public static native func AtanF(a: Float, b: Float) -> Float

public static native func Deg2Rad(deg: Float) -> Float
public static native func Rad2Deg(rad: Float) -> Float

Angle Helpers

// Scripted
public static func AngleNormalize180(a: Float) -> Float
public static func LerpAngleF(alpha: Float, a: Float, b: Float) -> Float
public static func GetOppositeRotation180(rot: EulerAngles) -> EulerAngles

// Natives
public static native func AngleApproach(target: Float, cur: Float, step: Float) -> Float
public static native func AngleDistance(target: Float, current: Float) -> Float
public static native func AngleNormalize(a: Float) -> Float
public static native func GetLookAtLimitDegreesValue(limitType: animLookAtLimitDegreesType) -> Float
public static native func GetLookAtLimitDistanceValue(limitType: animLookAtLimitDistanceType) -> Float
public static native func GetLookAtLimits(softLimitDegreesType: animLookAtLimitDegreesType, hardLimitDegreesType: animLookAtLimitDegreesType, hardLimitDistanceType: animLookAtLimitDistanceType, backLimitDegreesType: animLookAtLimitDegreesType) -> LookAtLimits
public static native func GetLookAtStatus(status: animLookAtStatus, currentStatus: Float) -> Bool
public static native func GetLookAtTransitionSpeed(style: animLookAtStyle) -> Float
Clone this wiki locally