1#[cfg(feature = "unity_engine-matrix4x4-types")]
4mod __types {
5 #[allow(unused_imports)] use ::unity::prelude::*;
6
7 use super::*;
8 use crate::system::{
9 object::{IObject, Object},
10 valuetype::{IValueType, ValueType},
11 };
12
13 #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/matrix4x4/Matrix4x4.md"))]
14 #[repr(C)]
15 #[derive(::core::clone::Clone, ::core::marker::Copy)]
16 pub struct Matrix4x4 {
17 pub m00: f32,
18 pub m10: f32,
19 pub m20: f32,
20 pub m30: f32,
21 pub m01: f32,
22 pub m11: f32,
23 pub m21: f32,
24 pub m31: f32,
25 pub m02: f32,
26 pub m12: f32,
27 pub m22: f32,
28 pub m32: f32,
29 pub m03: f32,
30 pub m13: f32,
31 pub m23: f32,
32 pub m33: f32,
33 }
34 impl ::unity::ClassIdentity for Matrix4x4 {
35 const NAME: &'static str = "Matrix4x4";
36 const NAMESPACE: &'static str = "UnityEngine";
37
38 fn class() -> ::unity::Class {
39 static CACHE: ::std::sync::OnceLock<::unity::Class> = ::std::sync::OnceLock::new();
40 *CACHE.get_or_init(|| ::unity::Class::lookup(Self::NAMESPACE, Self::NAME))
41 }
42 }
43 impl ::unity::IlType for Matrix4x4 {
44 fn il_type() -> &'static ::unity::il2cpp::Il2CppType {
45 &<Self as ::unity::ClassIdentity>::class().raw()._1.byval_arg
46 }
47 }
48 impl Matrix4x4 {
49 #[inline]
50 pub fn zero_matrix() -> crate::unity_engine::matrix4x4::Matrix4x4 {
51 static OFFSET: ::std::sync::OnceLock<usize> = ::std::sync::OnceLock::new();
52 let __offset = ::unity::cached_field_offset_static::<Self>(&OFFSET, "zeroMatrix");
53 ::unity::static_field_get_value_at_offset(<Self as ::unity::ClassIdentity>::class(), __offset)
54 }
55
56 #[inline]
57 pub fn set_zero_matrix(value: crate::unity_engine::matrix4x4::Matrix4x4) {
58 static OFFSET: ::std::sync::OnceLock<usize> = ::std::sync::OnceLock::new();
59 let __offset = ::unity::cached_field_offset_static::<Self>(&OFFSET, "zeroMatrix");
60 ::unity::static_field_set_value_at_offset(<Self as ::unity::ClassIdentity>::class(), __offset, value);
61 }
62
63 #[inline]
64 pub fn identity_matrix() -> crate::unity_engine::matrix4x4::Matrix4x4 {
65 static OFFSET: ::std::sync::OnceLock<usize> = ::std::sync::OnceLock::new();
66 let __offset = ::unity::cached_field_offset_static::<Self>(&OFFSET, "identityMatrix");
67 ::unity::static_field_get_value_at_offset(<Self as ::unity::ClassIdentity>::class(), __offset)
68 }
69
70 #[inline]
71 pub fn set_identity_matrix(value: crate::unity_engine::matrix4x4::Matrix4x4) {
72 static OFFSET: ::std::sync::OnceLock<usize> = ::std::sync::OnceLock::new();
73 let __offset = ::unity::cached_field_offset_static::<Self>(&OFFSET, "identityMatrix");
74 ::unity::static_field_set_value_at_offset(<Self as ::unity::ClassIdentity>::class(), __offset, value);
75 }
76 }
77}
78
79#[cfg(feature = "unity_engine-matrix4x4-types")]
80pub use __types::*;
81
82#[cfg(feature = "unity_engine-matrix4x4")]
83impl Matrix4x4 {
84 #[doc = "`TRS(crate::unity_engine::vector3::Vector3, crate::unity_engine::quaternion::Quaternion, crate::unity_engine::vector3::Vector3)` overload"]
85 pub fn trs(
86 pos: impl ::core::convert::Into<crate::unity_engine::vector3::Vector3>,
87 q: impl ::core::convert::Into<crate::unity_engine::quaternion::Quaternion>,
88 s: impl ::core::convert::Into<crate::unity_engine::vector3::Vector3>,
89 ) -> crate::unity_engine::matrix4x4::Matrix4x4 {
90 unsafe {
91 ::unity::il2cpp_call!((::unity::module_base()+0x32e0790usize)as*mut u8,crate::unity_engine::matrix4x4::Matrix4x4;
92(crate::unity_engine::vector3::Vector3)::core::convert::Into::into(pos),(crate::unity_engine::quaternion::Quaternion)::core::convert::Into::into(q),(crate::unity_engine::vector3::Vector3)::core::convert::Into::into(s))
93 }
94 }
95
96 #[doc = "`Inverse(crate::unity_engine::matrix4x4::Matrix4x4)` overload"]
97 pub fn inverse(m: impl ::core::convert::Into<crate::unity_engine::matrix4x4::Matrix4x4>) -> crate::unity_engine::matrix4x4::Matrix4x4 {
98 unsafe {
99 ::unity::il2cpp_call!((::unity::module_base()+0x32e08b0usize)as*mut u8,crate::unity_engine::matrix4x4::Matrix4x4;
100(crate::unity_engine::matrix4x4::Matrix4x4)::core::convert::Into::into(m))
101 }
102 }
103
104 #[doc = "`Perspective(f32, f32, f32, f32)` overload"]
105 pub fn perspective(
106 fov: impl ::core::convert::Into<f32>,
107 aspect: impl ::core::convert::Into<f32>,
108 z_near: impl ::core::convert::Into<f32>,
109 z_far: impl ::core::convert::Into<f32>,
110 ) -> crate::unity_engine::matrix4x4::Matrix4x4 {
111 unsafe {
112 ::unity::il2cpp_call!((::unity::module_base()+0x32e0a60usize)as*mut u8,crate::unity_engine::matrix4x4::Matrix4x4;
113(f32)::core::convert::Into::into(fov),(f32)::core::convert::Into::into(aspect),(f32)::core::convert::Into::into(z_near),(f32)::core::convert::Into::into(z_far))
114 }
115 }
116
117 #[doc = "`LookAt(crate::unity_engine::vector3::Vector3, crate::unity_engine::vector3::Vector3, crate::unity_engine::vector3::Vector3)` overload"]
118 pub fn look_at(
119 from: impl ::core::convert::Into<crate::unity_engine::vector3::Vector3>,
120 to: impl ::core::convert::Into<crate::unity_engine::vector3::Vector3>,
121 up: impl ::core::convert::Into<crate::unity_engine::vector3::Vector3>,
122 ) -> crate::unity_engine::matrix4x4::Matrix4x4 {
123 unsafe {
124 ::unity::il2cpp_call!((::unity::module_base()+0x32e0b80usize)as*mut u8,crate::unity_engine::matrix4x4::Matrix4x4;
125(crate::unity_engine::vector3::Vector3)::core::convert::Into::into(from),(crate::unity_engine::vector3::Vector3)::core::convert::Into::into(to),(crate::unity_engine::vector3::Vector3)::core::convert::Into::into(up))
126 }
127 }
128
129 #[doc = "`op_Multiply(crate::unity_engine::matrix4x4::Matrix4x4, crate::unity_engine::matrix4x4::Matrix4x4)` overload"]
130 pub fn op_multiply(
131 lhs: impl ::core::convert::Into<crate::unity_engine::matrix4x4::Matrix4x4>,
132 rhs: impl ::core::convert::Into<crate::unity_engine::matrix4x4::Matrix4x4>,
133 ) -> crate::unity_engine::matrix4x4::Matrix4x4 {
134 unsafe {
135 ::unity::il2cpp_call!((::unity::module_base()+0x32e1470usize)as*mut u8,crate::unity_engine::matrix4x4::Matrix4x4;
136(crate::unity_engine::matrix4x4::Matrix4x4)::core::convert::Into::into(lhs),(crate::unity_engine::matrix4x4::Matrix4x4)::core::convert::Into::into(rhs))
137 }
138 }
139
140 #[doc = "`op_Multiply(crate::unity_engine::matrix4x4::Matrix4x4, crate::unity_engine::vector4::Vector4)` overload"]
141 pub fn op_multiply_2(
142 lhs: impl ::core::convert::Into<crate::unity_engine::matrix4x4::Matrix4x4>,
143 vector: impl ::core::convert::Into<crate::unity_engine::vector4::Vector4>,
144 ) -> crate::unity_engine::vector4::Vector4 {
145 unsafe {
146 ::unity::il2cpp_call!((::unity::module_base()+0x32e16e0usize)as*mut u8,crate::unity_engine::vector4::Vector4;
147(crate::unity_engine::matrix4x4::Matrix4x4)::core::convert::Into::into(lhs),(crate::unity_engine::vector4::Vector4)::core::convert::Into::into(vector))
148 }
149 }
150
151 #[doc = "`op_Equality(crate::unity_engine::matrix4x4::Matrix4x4, crate::unity_engine::matrix4x4::Matrix4x4)` overload"]
152 pub fn op_equality(
153 lhs: impl ::core::convert::Into<crate::unity_engine::matrix4x4::Matrix4x4>,
154 rhs: impl ::core::convert::Into<crate::unity_engine::matrix4x4::Matrix4x4>,
155 ) -> bool {
156 unsafe {
157 ::unity::il2cpp_call!((::unity::module_base()+0x32e1780usize)as*mut u8,bool;
158(crate::unity_engine::matrix4x4::Matrix4x4)::core::convert::Into::into(lhs),(crate::unity_engine::matrix4x4::Matrix4x4)::core::convert::Into::into(rhs))
159 }
160 }
161
162 #[doc = "`op_Inequality(crate::unity_engine::matrix4x4::Matrix4x4, crate::unity_engine::matrix4x4::Matrix4x4)` overload"]
163 pub fn op_inequality(
164 lhs: impl ::core::convert::Into<crate::unity_engine::matrix4x4::Matrix4x4>,
165 rhs: impl ::core::convert::Into<crate::unity_engine::matrix4x4::Matrix4x4>,
166 ) -> bool {
167 unsafe {
168 ::unity::il2cpp_call!((::unity::module_base()+0x32e19c0usize)as*mut u8,bool;
169(crate::unity_engine::matrix4x4::Matrix4x4)::core::convert::Into::into(lhs),(crate::unity_engine::matrix4x4::Matrix4x4)::core::convert::Into::into(rhs))
170 }
171 }
172
173 #[doc = "`Scale(crate::unity_engine::vector3::Vector3)` overload"]
174 pub fn scale(vector: impl ::core::convert::Into<crate::unity_engine::vector3::Vector3>) -> crate::unity_engine::matrix4x4::Matrix4x4 {
175 unsafe {
176 ::unity::il2cpp_call!((::unity::module_base()+0x32e1d20usize)as*mut u8,crate::unity_engine::matrix4x4::Matrix4x4;
177(crate::unity_engine::vector3::Vector3)::core::convert::Into::into(vector))
178 }
179 }
180
181 #[doc = "`Translate(crate::unity_engine::vector3::Vector3)` overload"]
182 pub fn translate(vector: impl ::core::convert::Into<crate::unity_engine::vector3::Vector3>) -> crate::unity_engine::matrix4x4::Matrix4x4 {
183 unsafe {
184 ::unity::il2cpp_call!((::unity::module_base()+0x32e1d50usize)as*mut u8,crate::unity_engine::matrix4x4::Matrix4x4;
185(crate::unity_engine::vector3::Vector3)::core::convert::Into::into(vector))
186 }
187 }
188
189 #[doc = "`Rotate(crate::unity_engine::quaternion::Quaternion)` overload"]
190 pub fn rotate(q: impl ::core::convert::Into<crate::unity_engine::quaternion::Quaternion>) -> crate::unity_engine::matrix4x4::Matrix4x4 {
191 unsafe {
192 ::unity::il2cpp_call!((::unity::module_base()+0x32e1d80usize)as*mut u8,crate::unity_engine::matrix4x4::Matrix4x4;
193(crate::unity_engine::quaternion::Quaternion)::core::convert::Into::into(q))
194 }
195 }
196
197 #[doc = "`get_zero()` overload"]
198 pub fn get_zero() -> crate::unity_engine::matrix4x4::Matrix4x4 {
199 unsafe {
200 ::unity::il2cpp_call!((::unity::module_base()+0x32e1e30usize)as*mut u8,crate::unity_engine::matrix4x4::Matrix4x4;
201 )
202 }
203 }
204
205 #[doc = "`get_identity()` overload"]
206 pub fn get_identity() -> crate::unity_engine::matrix4x4::Matrix4x4 {
207 unsafe {
208 ::unity::il2cpp_call!((::unity::module_base()+0x32e1eb0usize)as*mut u8,crate::unity_engine::matrix4x4::Matrix4x4;
209 )
210 }
211 }
212
213 #[doc = "`.cctor()` overload"]
214 pub fn cctor() -> () {
215 unsafe {
216 ::unity::il2cpp_call!((::unity::module_base()+0x32e2550usize)as*mut u8,();
217 )
218 }
219 }
220
221 #[doc = "`GetRotation_Injected(*mutcrate::unity_engine::matrix4x4::Matrix4x4, *mutcrate::unity_engine::quaternion::Quaternion)` overload"]
222 pub fn get_rotation_injected() -> (crate::unity_engine::matrix4x4::Matrix4x4, crate::unity_engine::quaternion::Quaternion) {
223 unsafe {
224 let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::matrix4x4::Matrix4x4>::uninit();
225 let mut __out_1 = ::core::mem::MaybeUninit::<crate::unity_engine::quaternion::Quaternion>::uninit();
226 ::unity::il2cpp_call!((::unity::module_base()+0x32e0470usize)as*mut u8,();
227(*mut crate::unity_engine::matrix4x4::Matrix4x4)__out_0.as_mut_ptr(),(*mut crate::unity_engine::quaternion::Quaternion)__out_1.as_mut_ptr());
228 (__out_0.assume_init(), __out_1.assume_init())
229 }
230 }
231
232 #[doc = "`GetLossyScale_Injected(*mutcrate::unity_engine::matrix4x4::Matrix4x4, *mutcrate::unity_engine::vector3::Vector3)` overload"]
233 pub fn get_lossy_scale_injected() -> (crate::unity_engine::matrix4x4::Matrix4x4, crate::unity_engine::vector3::Vector3) {
234 unsafe {
235 let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::matrix4x4::Matrix4x4>::uninit();
236 let mut __out_1 = ::core::mem::MaybeUninit::<crate::unity_engine::vector3::Vector3>::uninit();
237 ::unity::il2cpp_call!((::unity::module_base()+0x32e0520usize)as*mut u8,();
238(*mut crate::unity_engine::matrix4x4::Matrix4x4)__out_0.as_mut_ptr(),(*mut crate::unity_engine::vector3::Vector3)__out_1.as_mut_ptr());
239 (__out_0.assume_init(), __out_1.assume_init())
240 }
241 }
242
243 #[doc = "`DecomposeProjection_Injected(*mutcrate::unity_engine::matrix4x4::Matrix4x4, *mutcrate::unity_engine::frustumplanes::FrustumPlanes)` overload"]
244 pub fn decompose_projection_injected() -> (
245 crate::unity_engine::matrix4x4::Matrix4x4,
246 crate::unity_engine::frustumplanes::FrustumPlanes,
247 ) {
248 unsafe {
249 let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::matrix4x4::Matrix4x4>::uninit();
250 let mut __out_1 = ::core::mem::MaybeUninit::<crate::unity_engine::frustumplanes::FrustumPlanes>::uninit();
251 ::unity::il2cpp_call!((::unity::module_base()+0x32e05f0usize)as*mut u8,();
252(*mut crate::unity_engine::matrix4x4::Matrix4x4)__out_0.as_mut_ptr(),(*mut crate::unity_engine::frustumplanes::FrustumPlanes)__out_1.as_mut_ptr());
253 (__out_0.assume_init(), __out_1.assume_init())
254 }
255 }
256
257 #[doc = "`TRS_Injected(*mutcrate::unity_engine::vector3::Vector3, *mutcrate::unity_engine::quaternion::Quaternion, *mutcrate::unity_engine::vector3::Vector3, *mutcrate::unity_engine::matrix4x4::Matrix4x4)` overload"]
258 pub fn trs_injected() -> (
259 crate::unity_engine::vector3::Vector3,
260 crate::unity_engine::quaternion::Quaternion,
261 crate::unity_engine::vector3::Vector3,
262 crate::unity_engine::matrix4x4::Matrix4x4,
263 ) {
264 unsafe {
265 let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::vector3::Vector3>::uninit();
266 let mut __out_1 = ::core::mem::MaybeUninit::<crate::unity_engine::quaternion::Quaternion>::uninit();
267 let mut __out_2 = ::core::mem::MaybeUninit::<crate::unity_engine::vector3::Vector3>::uninit();
268 let mut __out_3 = ::core::mem::MaybeUninit::<crate::unity_engine::matrix4x4::Matrix4x4>::uninit();
269 ::unity::il2cpp_call!((::unity::module_base()+0x32e0840usize)as*mut u8,();
270(*mut crate::unity_engine::vector3::Vector3)__out_0.as_mut_ptr(),(*mut crate::unity_engine::quaternion::Quaternion)__out_1.as_mut_ptr(),(*mut crate::unity_engine::vector3::Vector3)__out_2.as_mut_ptr(),(*mut crate::unity_engine::matrix4x4::Matrix4x4)__out_3.as_mut_ptr());
271 (__out_0.assume_init(), __out_1.assume_init(), __out_2.assume_init(), __out_3.assume_init())
272 }
273 }
274
275 #[doc = "`Inverse_Injected(*mutcrate::unity_engine::matrix4x4::Matrix4x4, *mutcrate::unity_engine::matrix4x4::Matrix4x4)` overload"]
276 pub fn inverse_injected() -> (crate::unity_engine::matrix4x4::Matrix4x4, crate::unity_engine::matrix4x4::Matrix4x4) {
277 unsafe {
278 let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::matrix4x4::Matrix4x4>::uninit();
279 let mut __out_1 = ::core::mem::MaybeUninit::<crate::unity_engine::matrix4x4::Matrix4x4>::uninit();
280 ::unity::il2cpp_call!((::unity::module_base()+0x32e0940usize)as*mut u8,();
281(*mut crate::unity_engine::matrix4x4::Matrix4x4)__out_0.as_mut_ptr(),(*mut crate::unity_engine::matrix4x4::Matrix4x4)__out_1.as_mut_ptr());
282 (__out_0.assume_init(), __out_1.assume_init())
283 }
284 }
285
286 #[doc = "`Perspective_Injected(f32, f32, f32, f32, *mutcrate::unity_engine::matrix4x4::Matrix4x4)` overload"]
287 pub fn perspective_injected(
288 fov: impl ::core::convert::Into<f32>,
289 aspect: impl ::core::convert::Into<f32>,
290 z_near: impl ::core::convert::Into<f32>,
291 z_far: impl ::core::convert::Into<f32>,
292 ) -> crate::unity_engine::matrix4x4::Matrix4x4 {
293 unsafe {
294 let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::matrix4x4::Matrix4x4>::uninit();
295 ::unity::il2cpp_call!((::unity::module_base()+0x32e0b10usize)as*mut u8,();
296(f32)::core::convert::Into::into(fov),(f32)::core::convert::Into::into(aspect),(f32)::core::convert::Into::into(z_near),(f32)::core::convert::Into::into(z_far),(*mut crate::unity_engine::matrix4x4::Matrix4x4)__out_0.as_mut_ptr());
297 __out_0.assume_init()
298 }
299 }
300
301 #[doc = "`LookAt_Injected(*mutcrate::unity_engine::vector3::Vector3, *mutcrate::unity_engine::vector3::Vector3, *mutcrate::unity_engine::vector3::Vector3, *mutcrate::unity_engine::matrix4x4::Matrix4x4)` overload"]
302 pub fn look_at_injected() -> (
303 crate::unity_engine::vector3::Vector3,
304 crate::unity_engine::vector3::Vector3,
305 crate::unity_engine::vector3::Vector3,
306 crate::unity_engine::matrix4x4::Matrix4x4,
307 ) {
308 unsafe {
309 let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::vector3::Vector3>::uninit();
310 let mut __out_1 = ::core::mem::MaybeUninit::<crate::unity_engine::vector3::Vector3>::uninit();
311 let mut __out_2 = ::core::mem::MaybeUninit::<crate::unity_engine::vector3::Vector3>::uninit();
312 let mut __out_3 = ::core::mem::MaybeUninit::<crate::unity_engine::matrix4x4::Matrix4x4>::uninit();
313 ::unity::il2cpp_call!((::unity::module_base()+0x32e0c30usize)as*mut u8,();
314(*mut crate::unity_engine::vector3::Vector3)__out_0.as_mut_ptr(),(*mut crate::unity_engine::vector3::Vector3)__out_1.as_mut_ptr(),(*mut crate::unity_engine::vector3::Vector3)__out_2.as_mut_ptr(),(*mut crate::unity_engine::matrix4x4::Matrix4x4)__out_3.as_mut_ptr());
315 (__out_0.assume_init(), __out_1.assume_init(), __out_2.assume_init(), __out_3.assume_init())
316 }
317 }
318}
319
320#[cfg(feature = "unity_engine-matrix4x4")]
321impl Matrix4x4 {
322 #[doc = "`GetRotation()` overload"]
323 pub fn get_rotation(&mut self) -> crate::unity_engine::quaternion::Quaternion {
324 unsafe {
325 ::unity::il2cpp_call!((::unity::module_base()+0x32e0410usize)as*mut u8,crate::unity_engine::quaternion::Quaternion;
326(*mut Matrix4x4)self as*mut Matrix4x4)
327 }
328 }
329
330 #[doc = "`GetLossyScale()` overload"]
331 pub fn get_lossy_scale(&mut self) -> crate::unity_engine::vector3::Vector3 {
332 unsafe {
333 ::unity::il2cpp_call!((::unity::module_base()+0x32e04c0usize)as*mut u8,crate::unity_engine::vector3::Vector3;
334(*mut Matrix4x4)self as*mut Matrix4x4)
335 }
336 }
337
338 #[doc = "`DecomposeProjection()` overload"]
339 pub fn decompose_projection(&mut self) -> crate::unity_engine::frustumplanes::FrustumPlanes {
340 unsafe {
341 ::unity::il2cpp_call!((::unity::module_base()+0x32e0570usize)as*mut u8,crate::unity_engine::frustumplanes::FrustumPlanes;
342(*mut Matrix4x4)self as*mut Matrix4x4)
343 }
344 }
345
346 #[doc = "`get_decomposeProjection()` overload"]
347 pub fn get_decompose_projection(&mut self) -> crate::unity_engine::frustumplanes::FrustumPlanes {
348 unsafe {
349 ::unity::il2cpp_call!((::unity::module_base()+0x32e0700usize)as*mut u8,crate::unity_engine::frustumplanes::FrustumPlanes;
350(*mut Matrix4x4)self as*mut Matrix4x4)
351 }
352 }
353
354 #[doc = "`get_inverse()` overload"]
355 pub fn get_inverse(&mut self) -> crate::unity_engine::matrix4x4::Matrix4x4 {
356 unsafe {
357 ::unity::il2cpp_call!((::unity::module_base()+0x32e0990usize)as*mut u8,crate::unity_engine::matrix4x4::Matrix4x4;
358(*mut Matrix4x4)self as*mut Matrix4x4)
359 }
360 }
361
362 #[doc = "`.ctor(crate::unity_engine::vector4::Vector4, crate::unity_engine::vector4::Vector4, crate::unity_engine::vector4::Vector4, crate::unity_engine::vector4::Vector4)` overload"]
363 pub fn ctor(
364 &mut self,
365 column0: impl ::core::convert::Into<crate::unity_engine::vector4::Vector4>,
366 column1: impl ::core::convert::Into<crate::unity_engine::vector4::Vector4>,
367 column2: impl ::core::convert::Into<crate::unity_engine::vector4::Vector4>,
368 column3: impl ::core::convert::Into<crate::unity_engine::vector4::Vector4>,
369 ) -> () {
370 unsafe {
371 ::unity::il2cpp_call!((::unity::module_base()+0x32e0ca0usize)as*mut u8,();
372(*mut Matrix4x4)self as*mut Matrix4x4,(crate::unity_engine::vector4::Vector4)::core::convert::Into::into(column0),(crate::unity_engine::vector4::Vector4)::core::convert::Into::into(column1),(crate::unity_engine::vector4::Vector4)::core::convert::Into::into(column2),(crate::unity_engine::vector4::Vector4)::core::convert::Into::into(column3))
373 }
374 }
375
376 #[doc = "`set_Item(i32, i32, f32)` overload"]
377 pub fn set_item(
378 &mut self,
379 row: impl ::core::convert::Into<i32>,
380 column: impl ::core::convert::Into<i32>,
381 value: impl ::core::convert::Into<f32>,
382 ) -> () {
383 unsafe {
384 ::unity::il2cpp_call!((::unity::module_base()+0x32e0cf0usize)as*mut u8,();
385(*mut Matrix4x4)self as*mut Matrix4x4,(i32)::core::convert::Into::into(row),(i32)::core::convert::Into::into(column),(f32)::core::convert::Into::into(value))
386 }
387 }
388
389 #[doc = "`get_Item(i32)` overload"]
390 pub fn get_item(&mut self, index: impl ::core::convert::Into<i32>) -> f32 {
391 unsafe {
392 ::unity::il2cpp_call!((::unity::module_base()+0x32e0e70usize)as*mut u8,f32;
393(*mut Matrix4x4)self as*mut Matrix4x4,(i32)::core::convert::Into::into(index))
394 }
395 }
396
397 #[doc = "`set_Item(i32, f32)` overload"]
398 pub fn set_item_2(&mut self, index: impl ::core::convert::Into<i32>, value: impl ::core::convert::Into<f32>) -> () {
399 unsafe {
400 ::unity::il2cpp_call!((::unity::module_base()+0x32e0d00usize)as*mut u8,();
401(*mut Matrix4x4)self as*mut Matrix4x4,(i32)::core::convert::Into::into(index),(f32)::core::convert::Into::into(value))
402 }
403 }
404
405 #[doc = "`GetHashCode()` overload"]
406 pub fn get_hash_code(&mut self) -> i32 {
407 unsafe {
408 ::unity::il2cpp_call!((::unity::module_base()+0x32e0fe0usize)as*mut u8,i32;
409(*mut Matrix4x4)self as*mut Matrix4x4)
410 }
411 }
412
413 #[doc = "`Equals(crate::system::object::Object)` overload"]
414 pub fn equals(&mut self, other: impl ::core::convert::Into<crate::system::object::Object>) -> bool {
415 unsafe {
416 ::unity::il2cpp_call!((::unity::module_base()+0x32e11d0usize)as*mut u8,bool;
417(*mut Matrix4x4)self as*mut Matrix4x4,(crate::system::object::Object)::core::convert::Into::into(other))
418 }
419 }
420
421 #[doc = "`Equals(crate::unity_engine::matrix4x4::Matrix4x4)` overload"]
422 pub fn equals_2(&mut self, other: impl ::core::convert::Into<crate::unity_engine::matrix4x4::Matrix4x4>) -> bool {
423 unsafe {
424 ::unity::il2cpp_call!((::unity::module_base()+0x32e1280usize)as*mut u8,bool;
425(*mut Matrix4x4)self as*mut Matrix4x4,(crate::unity_engine::matrix4x4::Matrix4x4)::core::convert::Into::into(other))
426 }
427 }
428
429 #[doc = "`GetColumn(i32)` overload"]
430 pub fn get_column(&mut self, index: impl ::core::convert::Into<i32>) -> crate::unity_engine::vector4::Vector4 {
431 unsafe {
432 ::unity::il2cpp_call!((::unity::module_base()+0x32e1100usize)as*mut u8,crate::unity_engine::vector4::Vector4;
433(*mut Matrix4x4)self as*mut Matrix4x4,(i32)::core::convert::Into::into(index))
434 }
435 }
436
437 #[doc = "`GetRow(i32)` overload"]
438 pub fn get_row(&mut self, index: impl ::core::convert::Into<i32>) -> crate::unity_engine::vector4::Vector4 {
439 unsafe {
440 ::unity::il2cpp_call!((::unity::module_base()+0x32e1a30usize)as*mut u8,crate::unity_engine::vector4::Vector4;
441(*mut Matrix4x4)self as*mut Matrix4x4,(i32)::core::convert::Into::into(index))
442 }
443 }
444
445 #[doc = "`SetColumn(i32, crate::unity_engine::vector4::Vector4)` overload"]
446 pub fn set_column(
447 &mut self,
448 index: impl ::core::convert::Into<i32>,
449 column: impl ::core::convert::Into<crate::unity_engine::vector4::Vector4>,
450 ) -> () {
451 unsafe {
452 ::unity::il2cpp_call!((::unity::module_base()+0x32e1b20usize)as*mut u8,();
453(*mut Matrix4x4)self as*mut Matrix4x4,(i32)::core::convert::Into::into(index),(crate::unity_engine::vector4::Vector4)::core::convert::Into::into(column))
454 }
455 }
456
457 #[doc = "`MultiplyPoint(crate::unity_engine::vector3::Vector3)` overload"]
458 pub fn multiply_point(
459 &mut self,
460 point: impl ::core::convert::Into<crate::unity_engine::vector3::Vector3>,
461 ) -> crate::unity_engine::vector3::Vector3 {
462 unsafe {
463 ::unity::il2cpp_call!((::unity::module_base()+0x32e1ba0usize)as*mut u8,crate::unity_engine::vector3::Vector3;
464(*mut Matrix4x4)self as*mut Matrix4x4,(crate::unity_engine::vector3::Vector3)::core::convert::Into::into(point))
465 }
466 }
467
468 #[doc = "`MultiplyPoint3x4(crate::unity_engine::vector3::Vector3)` overload"]
469 pub fn multiply_point3x4(
470 &mut self,
471 point: impl ::core::convert::Into<crate::unity_engine::vector3::Vector3>,
472 ) -> crate::unity_engine::vector3::Vector3 {
473 unsafe {
474 ::unity::il2cpp_call!((::unity::module_base()+0x32e1c40usize)as*mut u8,crate::unity_engine::vector3::Vector3;
475(*mut Matrix4x4)self as*mut Matrix4x4,(crate::unity_engine::vector3::Vector3)::core::convert::Into::into(point))
476 }
477 }
478
479 #[doc = "`MultiplyVector(crate::unity_engine::vector3::Vector3)` overload"]
480 pub fn multiply_vector(
481 &mut self,
482 vector: impl ::core::convert::Into<crate::unity_engine::vector3::Vector3>,
483 ) -> crate::unity_engine::vector3::Vector3 {
484 unsafe {
485 ::unity::il2cpp_call!((::unity::module_base()+0x32e1cc0usize)as*mut u8,crate::unity_engine::vector3::Vector3;
486(*mut Matrix4x4)self as*mut Matrix4x4,(crate::unity_engine::vector3::Vector3)::core::convert::Into::into(vector))
487 }
488 }
489
490 #[doc = "`ToString()` overload"]
491 pub fn to_string(&mut self) -> ::unity::Il2CppString {
492 unsafe {
493 ::unity::il2cpp_call!((::unity::module_base()+0x32e1f30usize)as*mut u8, ::unity::Il2CppString;
494(*mut Matrix4x4)self as*mut Matrix4x4)
495 }
496 }
497}
498
499#[cfg(feature = "unity_engine-matrix4x4")]
500impl Matrix4x4 {
501 pub fn get_rotation_method_info() -> &'static ::unity::il2cpp::MethodInfo {
502 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
503 }
504
505 pub fn get_lossy_scale_method_info() -> &'static ::unity::il2cpp::MethodInfo {
506 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
507 }
508
509 pub fn decompose_projection_method_info() -> &'static ::unity::il2cpp::MethodInfo {
510 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
511 }
512
513 pub fn get_decompose_projection_method_info() -> &'static ::unity::il2cpp::MethodInfo {
514 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
515 }
516
517 pub fn trs_method_info() -> &'static ::unity::il2cpp::MethodInfo {
518 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
519 }
520
521 pub fn inverse_method_info() -> &'static ::unity::il2cpp::MethodInfo {
522 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[7]
523 }
524
525 pub fn get_inverse_method_info() -> &'static ::unity::il2cpp::MethodInfo {
526 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[8]
527 }
528
529 pub fn perspective_method_info() -> &'static ::unity::il2cpp::MethodInfo {
530 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[9]
531 }
532
533 pub fn look_at_method_info() -> &'static ::unity::il2cpp::MethodInfo {
534 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[10]
535 }
536
537 pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
538 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[11]
539 }
540
541 pub fn set_item_method_info() -> &'static ::unity::il2cpp::MethodInfo {
542 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[12]
543 }
544
545 pub fn get_item_method_info() -> &'static ::unity::il2cpp::MethodInfo {
546 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[13]
547 }
548
549 pub fn set_item_2_method_info() -> &'static ::unity::il2cpp::MethodInfo {
550 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[14]
551 }
552
553 pub fn get_hash_code_method_info() -> &'static ::unity::il2cpp::MethodInfo {
554 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[15]
555 }
556
557 pub fn equals_method_info() -> &'static ::unity::il2cpp::MethodInfo {
558 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[16]
559 }
560
561 pub fn equals_2_method_info() -> &'static ::unity::il2cpp::MethodInfo {
562 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[17]
563 }
564
565 pub fn op_multiply_method_info() -> &'static ::unity::il2cpp::MethodInfo {
566 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[18]
567 }
568
569 pub fn op_multiply_2_method_info() -> &'static ::unity::il2cpp::MethodInfo {
570 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[19]
571 }
572
573 pub fn op_equality_method_info() -> &'static ::unity::il2cpp::MethodInfo {
574 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[20]
575 }
576
577 pub fn op_inequality_method_info() -> &'static ::unity::il2cpp::MethodInfo {
578 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[21]
579 }
580
581 pub fn get_column_method_info() -> &'static ::unity::il2cpp::MethodInfo {
582 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[22]
583 }
584
585 pub fn get_row_method_info() -> &'static ::unity::il2cpp::MethodInfo {
586 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[23]
587 }
588
589 pub fn set_column_method_info() -> &'static ::unity::il2cpp::MethodInfo {
590 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[24]
591 }
592
593 pub fn multiply_point_method_info() -> &'static ::unity::il2cpp::MethodInfo {
594 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[25]
595 }
596
597 pub fn multiply_point3x4_method_info() -> &'static ::unity::il2cpp::MethodInfo {
598 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[26]
599 }
600
601 pub fn multiply_vector_method_info() -> &'static ::unity::il2cpp::MethodInfo {
602 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[27]
603 }
604
605 pub fn scale_method_info() -> &'static ::unity::il2cpp::MethodInfo {
606 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[28]
607 }
608
609 pub fn translate_method_info() -> &'static ::unity::il2cpp::MethodInfo {
610 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[29]
611 }
612
613 pub fn rotate_method_info() -> &'static ::unity::il2cpp::MethodInfo {
614 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[30]
615 }
616
617 pub fn get_zero_method_info() -> &'static ::unity::il2cpp::MethodInfo {
618 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[31]
619 }
620
621 pub fn get_identity_method_info() -> &'static ::unity::il2cpp::MethodInfo {
622 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[32]
623 }
624
625 pub fn to_string_method_info() -> &'static ::unity::il2cpp::MethodInfo {
626 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[33]
627 }
628
629 pub fn cctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
630 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[35]
631 }
632
633 pub fn get_rotation_injected_method_info() -> &'static ::unity::il2cpp::MethodInfo {
634 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[36]
635 }
636
637 pub fn get_lossy_scale_injected_method_info() -> &'static ::unity::il2cpp::MethodInfo {
638 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[37]
639 }
640
641 pub fn decompose_projection_injected_method_info() -> &'static ::unity::il2cpp::MethodInfo {
642 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[38]
643 }
644
645 pub fn trs_injected_method_info() -> &'static ::unity::il2cpp::MethodInfo {
646 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[39]
647 }
648
649 pub fn inverse_injected_method_info() -> &'static ::unity::il2cpp::MethodInfo {
650 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[40]
651 }
652
653 pub fn perspective_injected_method_info() -> &'static ::unity::il2cpp::MethodInfo {
654 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[41]
655 }
656
657 pub fn look_at_injected_method_info() -> &'static ::unity::il2cpp::MethodInfo {
658 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[42]
659 }
660}
661
662#[cfg(feature = "unity_engine-matrix4x4")]
663#[doc(hidden)]
664pub mod prelude {
665 pub use super::Matrix4x4;
666 #[cfg(feature = "system-object")]
667 pub use crate::system::object::IObjectMethods;
668 #[cfg(feature = "system-valuetype")]
669 pub use crate::system::valuetype::IValueTypeMethods;
670 pub use crate::system::{object::IObject, valuetype::IValueType};
671}