Skip to main content

engage/generated/unity_engine/
matrix4x4.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[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}