-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathMatrix4x4.lua
135 lines (134 loc) · 3.22 KB
/
Matrix4x4.lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
---@meta Ravenscript
---*Unity Type*
---
---[RS Docs](http://ravenfieldgame.com/ravenscript/api/Matrix4x4.html)
---@class Matrix4x4: Component
---@overload fun( column0?:Vector4, column1?:Vector4, column2?:Vector4, column3?:Vector4):Matrix4x4
---@operator call:Matrix4x4
---**Const**
---@field determinant float
---**Const**
---@field inverse Matrix4x4
---**Const**
---@field isIdentity bool
---**Const**
---@field lossyScale Vector3
---@field m00 float
---@field m01 float
---@field m02 float
---@field m03 float
---@field m10 float
---@field m11 float
---@field m12 float
---@field m13 float
---@field m20 float
---@field m21 float
---@field m22 float
---@field m23 float
---@field m30 float
---@field m31 float
---@field m32 float
---@field m33 float
---**Const**
---@field rotation Quaternion
---**Const**
---@field transpose Matrix4x4
---**static Const**
---@field identity Matrix4x4
---**static Const**
---@field zero Matrix4x4
Matrix4x4 = {
---@param point Vector3
---@return Vector3
MultiplyPoint = function(point) end,
---@param point Vector3
---@return Vector3
MultiplyPoint3x4 = function(point) end,
---@param vector Vector3
---@return Vector3
MultiplyVector = function(vector) end,
---@param index int
---@param column Vector4
SetColumn = function(index, column) end,
---@param index int
---@param row Vector4
SetRow = function(index, row) end,
---@param pos Vector3
---@param q Quaternion
---@param s Vector3
SetTRS = function(pos, q, s) end,
---@param format string
---@return string
ToString = function(format) end,
---@param plane Plane
---@return Plane
TransformPlane = function(plane) end,
---@return bool
ValidTRS = function() end,
---**static**
---@param m Matrix4x4
---@return float
Determinant = function(m) end,
---**static**
---@param left float
---@param right float
---@param bottom float
---@param top float
---@param zNear float
---@param zFar float
---@return Matrix4x4
Frustum = function(left, right, bottom, top, zNear, zFar) end,
---**static**
---@param m Matrix4x4
---@return Matrix4x4
Inverse = function(m) end,
---**static**
---@param input Matrix4x4
---@param result Matrix4x4
---@return bool
Inverse3DAffine = function(input, result) end,
---**static**
---@param from Vector3
---@param to Vector3
---@param up Vector3
---@return Matrix4x4
LookAt = function(from, to, up) end,
---**static**
---@param left float
---@param right float
---@param bottom float
---@param top float
---@param zNear float
---@param zFar float
---@return Matrix4x4
Ortho = function(left, right, bottom, top, zNear, zFar) end,
---**static**
---@param fov float
---@param aspect float
---@param zNear float
---@param zFar float
---@return Matrix4x4
Perspective = function(fov, aspect, zNear, zFar) end,
---**static**
---@param q Quaternion
---@return Matrix4x4
Rotate = function(q) end,
---**static**
---@param vector Vector3
---@return Matrix4x4
Scale = function(vector) end,
---**static**
---@param vector Vector3
---@return Matrix4x4
Translate = function(vector) end,
---**static**
---@param m Matrix4x4
---@return Matrix4x4
Transpose = function(m) end,
---**static**
---@param pos Vector3
---@param q Quaternion
---@param s Vector3
---@return Matrix4x4
TRS = function(pos, q, s) end,
}