Types
HorizontalAlignment = enum Left, Center, Right
TMat2[T] = object data*: array[4, T]
TMat3[T] = object data*: array[9, T]
TMat4[T] = object data*: array[16, T]
TMat23[T] = object data*: array[6, T]
TMat32[T] = object data*: array[6, T]
TMat34[T] = object data*: array[12, T]
TMat43[T] = object data*: array[12, T]
TVec1[T] = array[1, T]
TVec2[T] = array[2, T]
TVec3[T] = array[3, T]
TVec4[T] = array[4, T]
VerticalAlignment = enum Top, Center, Bottom
Consts
AUDIO_SAMPLE_RATE = 44100
B = [1.0, 0.0, 0.0, 1.0]
DEFAULT_PACKAGE = "default"
ENGINE_LOGLEVEL = lvlDebug
G = [1.0, 0.0, 0.0, 1.0]
O = [0.0, 0.0, 0.0]
Oi = [0, 0, 0]
Oi8 = [0, 0, 0]
PACKAGETYPE {.strdefine.}: string = "exe"
R = [1.0, 0.0, 0.0, 1.0]
RESOURCEROOT = "resources"
Unit2 = (data: [1.0, 0.0, 0.0, 1.0])
Unit2f = (data: [1.0, 0.0, 0.0, 1.0])
Unit2f32 = (data: [1.0, 0.0, 0.0, 1.0])
Unit2f64 = (data: [1.0, 0.0, 0.0, 1.0])
Unit2i = (data: [1, 0, 0, 1])
Unit2i8 = (data: [1, 0, 0, 1])
Unit2i16 = (data: [1, 0, 0, 1])
Unit2i32 = (data: [1, 0, 0, 1])
Unit2i64 = (data: [1, 0, 0, 1])
Unit3 = (data: [1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0])
Unit3f = (data: [1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0])
Unit3f32 = (data: [1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0])
Unit3f64 = (data: [1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0])
Unit3i = (data: [1, 0, 0, 0, 1, 0, 0, 0, 1])
Unit3i8 = (data: [1, 0, 0, 0, 1, 0, 0, 0, 1])
Unit3i16 = (data: [1, 0, 0, 0, 1, 0, 0, 0, 1])
Unit3i32 = (data: [1, 0, 0, 0, 1, 0, 0, 0, 1])
Unit3i64 = (data: [1, 0, 0, 0, 1, 0, 0, 0, 1])
Unit4 = (data: [1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0])
Unit4f = (data: [1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0])
Unit4f32 = (data: [1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0])
Unit4f64 = (data: [1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0])
Unit4i = (data: [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1])
Unit4i8 = (data: [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1])
Unit4i16 = (data: [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1])
Unit4i32 = (data: [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1])
Unit4i64 = (data: [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1])
X = [1.0, 0.0, 0.0]
Xi = [1, 0, 0]
Xi8 = [1, 0, 0]
XY = [1.0, 1.0, 0.0]
XYi = [1, 1, 0]
XYi8 = [1, 1, 0]
XYZ = [1.0, 1.0, 1.0]
XYZi = [1, 1, 1]
XYZi8 = [1, 1, 1]
XZ = [1.0, 0.0, 1.0]
XZi = [1, 0, 1]
XZi8 = [1, 0, 1]
Y = [0.0, 1.0, 0.0]
Yi = [0, 1, 0]
Yi8 = [0, 1, 0]
YZ = [0.0, 1.0, 1.0]
YZi = [0, 1, 1]
YZi8 = [0, 1, 1]
Z = [0.0, 0.0, 1.0]
Zi = [0, 0, 1]
Zi8 = [0, 0, 1]
Procs
proc `*=`[T1: TSquareMat; T2: TSquareMat | SomeNumber](a: var T1; b: T2)
proc `+=`[T1: TSquareMat; T2: TSquareMat | SomeNumber](a: var T1; b: T2)
proc `-=`[T1: TSquareMat; T2: TSquareMat | SomeNumber](a: var T1; b: T2)
func angleBetween(a, b: Vec3f): float32 {....raises: [], tags: [], forbids: [].}
proc AppName(): string {....raises: [], tags: [ReadIOEffect], forbids: [].}
func CleanString(str: openArray[char]): string {....raises: [], tags: [], forbids: [].}
proc nativeFree(p: pointer) {.importc: "free", ...raises: [], tags: [], forbids: [].}
func normalized[T: SomeFloat](vec: TVec1[T]): auto
func normalized[T: SomeFloat](vec: TVec2[T]): auto
func normalized[T: SomeFloat](vec: TVec3[T]): auto
func normalized[T: SomeFloat](vec: TVec4[T]): auto
func projection(fovy, aspect, zNear, zFar: float32): Mat4 {....raises: [], tags: [], forbids: [].}
func Size[T: seq](list: T): uint64
proc StaticExecChecked(command: string; input = ""): string {.compileTime, ...raises: [Exception], tags: [], forbids: [].}
func ToCPointer[T](list: openArray[T]): ptr T
func transformed[T, S](points: openArray[S]; mat: TMat4[T]): seq[S]
func translate2d[T](x, y: T): TMat3[T]
func transposed[T](m: TMat2[T]): TMat2[T]
func transposed[T](m: TMat3[T]): TMat3[T]
func transposed[T](m: TMat4[T]): TMat4[T]
func transposed[T](m: TMat23[T]): TMat32[T]
func transposed[T](m: TMat32[T]): TMat23[T]
func transposed[T](m: TMat34[T]): TMat43[T]
func transposed[T](m: TMat43[T]): TMat34[T]
Templates
template ColumnCount(m: typedesc): int
template RowCount(m: typedesc): int
template TimeAndLog(body: untyped): untyped
template TimeAndLog(name: string; body: untyped): untyped