1#[cfg(feature = "tm_pro-tmp_meshinfo-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/tm_pro/tmp_meshinfo/TMP_MeshInfo.md"))]
14 #[repr(C)]
15 #[derive(::core::clone::Clone, ::core::marker::Copy)]
16 pub struct TMP_MeshInfo {
17 pub mesh: crate::unity_engine::mesh::Mesh,
18 pub vertex_count: i32,
19 pub vertices: ::unity::Array<crate::unity_engine::vector3::Vector3>,
20 pub normals: ::unity::Array<crate::unity_engine::vector3::Vector3>,
21 pub tangents: ::unity::Array<crate::unity_engine::vector4::Vector4>,
22 pub uvs0: ::unity::Array<crate::unity_engine::vector2::Vector2>,
23 pub uvs2: ::unity::Array<crate::unity_engine::vector2::Vector2>,
24 pub colors32: ::unity::Array<crate::unity_engine::color32::Color32>,
25 pub triangles: ::unity::Array<i32>,
26 pub material: crate::unity_engine::material::Material,
27 }
28 impl ::unity::ClassIdentity for TMP_MeshInfo {
29 const NAME: &'static str = "TMP_MeshInfo";
30 const NAMESPACE: &'static str = "TMPro";
31
32 fn class() -> ::unity::Class {
33 static CACHE: ::std::sync::OnceLock<::unity::Class> = ::std::sync::OnceLock::new();
34 *CACHE.get_or_init(|| ::unity::Class::lookup(Self::NAMESPACE, Self::NAME))
35 }
36 }
37 impl ::unity::IlType for TMP_MeshInfo {
38 fn il_type() -> &'static ::unity::il2cpp::Il2CppType {
39 &<Self as ::unity::ClassIdentity>::class().raw()._1.byval_arg
40 }
41 }
42 impl TMP_MeshInfo {
43 #[inline]
44 pub fn s_default_color() -> crate::unity_engine::color32::Color32 {
45 static OFFSET: ::std::sync::OnceLock<usize> = ::std::sync::OnceLock::new();
46 let __offset = ::unity::cached_field_offset_static::<Self>(&OFFSET, "s_DefaultColor");
47 ::unity::static_field_get_value_at_offset(<Self as ::unity::ClassIdentity>::class(), __offset)
48 }
49
50 #[inline]
51 pub fn set_s_default_color(value: crate::unity_engine::color32::Color32) {
52 static OFFSET: ::std::sync::OnceLock<usize> = ::std::sync::OnceLock::new();
53 let __offset = ::unity::cached_field_offset_static::<Self>(&OFFSET, "s_DefaultColor");
54 ::unity::static_field_set_value_at_offset(<Self as ::unity::ClassIdentity>::class(), __offset, value);
55 }
56
57 #[inline]
58 pub fn s_default_normal() -> crate::unity_engine::vector3::Vector3 {
59 static OFFSET: ::std::sync::OnceLock<usize> = ::std::sync::OnceLock::new();
60 let __offset = ::unity::cached_field_offset_static::<Self>(&OFFSET, "s_DefaultNormal");
61 ::unity::static_field_get_value_at_offset(<Self as ::unity::ClassIdentity>::class(), __offset)
62 }
63
64 #[inline]
65 pub fn set_s_default_normal(value: crate::unity_engine::vector3::Vector3) {
66 static OFFSET: ::std::sync::OnceLock<usize> = ::std::sync::OnceLock::new();
67 let __offset = ::unity::cached_field_offset_static::<Self>(&OFFSET, "s_DefaultNormal");
68 ::unity::static_field_set_value_at_offset(<Self as ::unity::ClassIdentity>::class(), __offset, value);
69 }
70
71 #[inline]
72 pub fn s_default_tangent() -> crate::unity_engine::vector4::Vector4 {
73 static OFFSET: ::std::sync::OnceLock<usize> = ::std::sync::OnceLock::new();
74 let __offset = ::unity::cached_field_offset_static::<Self>(&OFFSET, "s_DefaultTangent");
75 ::unity::static_field_get_value_at_offset(<Self as ::unity::ClassIdentity>::class(), __offset)
76 }
77
78 #[inline]
79 pub fn set_s_default_tangent(value: crate::unity_engine::vector4::Vector4) {
80 static OFFSET: ::std::sync::OnceLock<usize> = ::std::sync::OnceLock::new();
81 let __offset = ::unity::cached_field_offset_static::<Self>(&OFFSET, "s_DefaultTangent");
82 ::unity::static_field_set_value_at_offset(<Self as ::unity::ClassIdentity>::class(), __offset, value);
83 }
84
85 #[inline]
86 pub fn s_default_bounds() -> crate::unity_engine::bounds::Bounds {
87 static OFFSET: ::std::sync::OnceLock<usize> = ::std::sync::OnceLock::new();
88 let __offset = ::unity::cached_field_offset_static::<Self>(&OFFSET, "s_DefaultBounds");
89 ::unity::static_field_get_value_at_offset(<Self as ::unity::ClassIdentity>::class(), __offset)
90 }
91
92 #[inline]
93 pub fn set_s_default_bounds(value: crate::unity_engine::bounds::Bounds) {
94 static OFFSET: ::std::sync::OnceLock<usize> = ::std::sync::OnceLock::new();
95 let __offset = ::unity::cached_field_offset_static::<Self>(&OFFSET, "s_DefaultBounds");
96 ::unity::static_field_set_value_at_offset(<Self as ::unity::ClassIdentity>::class(), __offset, value);
97 }
98 }
99}
100
101#[cfg(feature = "tm_pro-tmp_meshinfo-types")]
102pub use __types::*;
103
104#[cfg(feature = "tm_pro-tmp_meshinfo")]
105impl TMP_MeshInfo {
106 #[doc = "`.cctor()` overload"]
107 pub fn cctor() -> () {
108 unsafe {
109 ::unity::il2cpp_call!((::unity::module_base()+0x2829b80usize)as*mut u8,();
110 )
111 }
112 }
113}
114
115#[cfg(feature = "tm_pro-tmp_meshinfo")]
116impl TMP_MeshInfo {
117 #[doc = "`.ctor(crate::unity_engine::mesh::Mesh, i32)` overload"]
118 pub fn ctor(&mut self, mesh: impl ::core::convert::Into<crate::unity_engine::mesh::Mesh>, size: impl ::core::convert::Into<i32>) -> () {
119 unsafe {
120 ::unity::il2cpp_call!((::unity::module_base()+0x2827360usize)as*mut u8,();
121(*mut TMP_MeshInfo)self as*mut TMP_MeshInfo,(crate::unity_engine::mesh::Mesh)::core::convert::Into::into(mesh),(i32)::core::convert::Into::into(size))
122 }
123 }
124
125 #[doc = "`.ctor(crate::unity_engine::mesh::Mesh, i32, bool)` overload"]
126 pub fn ctor_2(
127 &mut self,
128 mesh: impl ::core::convert::Into<crate::unity_engine::mesh::Mesh>,
129 size: impl ::core::convert::Into<i32>,
130 is_volumetric: impl ::core::convert::Into<bool>,
131 ) -> () {
132 unsafe {
133 ::unity::il2cpp_call!((::unity::module_base()+0x28278d0usize)as*mut u8,();
134(*mut TMP_MeshInfo)self as*mut TMP_MeshInfo,(crate::unity_engine::mesh::Mesh)::core::convert::Into::into(mesh),(i32)::core::convert::Into::into(size),(bool)::core::convert::Into::into(is_volumetric))
135 }
136 }
137
138 #[doc = "`ResizeMeshInfo(i32)` overload"]
139 pub fn resize_mesh_info(&mut self, size: impl ::core::convert::Into<i32>) -> () {
140 unsafe {
141 ::unity::il2cpp_call!((::unity::module_base()+0x28281b0usize)as*mut u8,();
142(*mut TMP_MeshInfo)self as*mut TMP_MeshInfo,(i32)::core::convert::Into::into(size))
143 }
144 }
145
146 #[doc = "`ResizeMeshInfo(i32, bool)` overload"]
147 pub fn resize_mesh_info_2(&mut self, size: impl ::core::convert::Into<i32>, is_volumetric: impl ::core::convert::Into<bool>) -> () {
148 unsafe {
149 ::unity::il2cpp_call!((::unity::module_base()+0x2828640usize)as*mut u8,();
150(*mut TMP_MeshInfo)self as*mut TMP_MeshInfo,(i32)::core::convert::Into::into(size),(bool)::core::convert::Into::into(is_volumetric))
151 }
152 }
153
154 #[doc = "`Clear()` overload"]
155 pub fn clear(&mut self) -> () {
156 unsafe {
157 ::unity::il2cpp_call!((::unity::module_base()+0x2829040usize)as*mut u8,();
158(*mut TMP_MeshInfo)self as*mut TMP_MeshInfo)
159 }
160 }
161
162 #[doc = "`Clear(bool)` overload"]
163 pub fn clear_2(&mut self, upload_changes: impl ::core::convert::Into<bool>) -> () {
164 unsafe {
165 ::unity::il2cpp_call!((::unity::module_base()+0x2829100usize)as*mut u8,();
166(*mut TMP_MeshInfo)self as*mut TMP_MeshInfo,(bool)::core::convert::Into::into(upload_changes))
167 }
168 }
169
170 #[doc = "`ClearUnusedVertices()` overload"]
171 pub fn clear_unused_vertices(&mut self) -> () {
172 unsafe {
173 ::unity::il2cpp_call!((::unity::module_base()+0x2829240usize)as*mut u8,();
174(*mut TMP_MeshInfo)self as*mut TMP_MeshInfo)
175 }
176 }
177
178 #[doc = "`ClearUnusedVertices(i32)` overload"]
179 pub fn clear_unused_vertices_2(&mut self, start_index: impl ::core::convert::Into<i32>) -> () {
180 unsafe {
181 ::unity::il2cpp_call!((::unity::module_base()+0x2829270usize)as*mut u8,();
182(*mut TMP_MeshInfo)self as*mut TMP_MeshInfo,(i32)::core::convert::Into::into(start_index))
183 }
184 }
185
186 #[doc = "`ClearUnusedVertices(i32, bool)` overload"]
187 pub fn clear_unused_vertices_3(&mut self, start_index: impl ::core::convert::Into<i32>, update_mesh: impl ::core::convert::Into<bool>) -> () {
188 unsafe {
189 ::unity::il2cpp_call!((::unity::module_base()+0x2829290usize)as*mut u8,();
190(*mut TMP_MeshInfo)self as*mut TMP_MeshInfo,(i32)::core::convert::Into::into(start_index),(bool)::core::convert::Into::into(update_mesh))
191 }
192 }
193
194 #[doc = "`SortGeometry(crate::tm_pro::vertexsortingorder::VertexSortingOrder)` overload"]
195 pub fn sort_geometry(&mut self, order: impl ::core::convert::Into<crate::tm_pro::vertexsortingorder::VertexSortingOrder>) -> () {
196 unsafe {
197 ::unity::il2cpp_call!((::unity::module_base()+0x2829360usize)as*mut u8,();
198(*mut TMP_MeshInfo)self as*mut TMP_MeshInfo,(crate::tm_pro::vertexsortingorder::VertexSortingOrder)::core::convert::Into::into(order))
199 }
200 }
201
202 #[doc = "`SortGeometry(crate::system::collections::generic::ilist_1_interface::IList_1_Interface<i32>)` overload"]
203 pub fn sort_geometry_2(
204 &mut self,
205 sorting_order: impl ::core::convert::Into<crate::system::collections::generic::ilist_1_interface::IList_1_Interface<i32>>,
206 ) -> () {
207 unsafe {
208 ::unity::il2cpp_call!((::unity::module_base()+0x28299a0usize)as*mut u8,();
209(*mut TMP_MeshInfo)self as*mut TMP_MeshInfo,(crate::system::collections::generic::ilist_1_interface::IList_1_Interface<i32>)::core::convert::Into::into(sorting_order))
210 }
211 }
212
213 #[doc = "`SwapVertexData(i32, i32)` overload"]
214 pub fn swap_vertex_data(&mut self, src: impl ::core::convert::Into<i32>, dst: impl ::core::convert::Into<i32>) -> () {
215 unsafe {
216 ::unity::il2cpp_call!((::unity::module_base()+0x28293f0usize)as*mut u8,();
217(*mut TMP_MeshInfo)self as*mut TMP_MeshInfo,(i32)::core::convert::Into::into(src),(i32)::core::convert::Into::into(dst))
218 }
219 }
220}
221
222#[cfg(feature = "tm_pro-tmp_meshinfo")]
223impl TMP_MeshInfo {
224 pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
225 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
226 }
227
228 pub fn ctor_2_method_info() -> &'static ::unity::il2cpp::MethodInfo {
229 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
230 }
231
232 pub fn resize_mesh_info_method_info() -> &'static ::unity::il2cpp::MethodInfo {
233 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
234 }
235
236 pub fn resize_mesh_info_2_method_info() -> &'static ::unity::il2cpp::MethodInfo {
237 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
238 }
239
240 pub fn clear_method_info() -> &'static ::unity::il2cpp::MethodInfo {
241 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
242 }
243
244 pub fn clear_2_method_info() -> &'static ::unity::il2cpp::MethodInfo {
245 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
246 }
247
248 pub fn clear_unused_vertices_method_info() -> &'static ::unity::il2cpp::MethodInfo {
249 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
250 }
251
252 pub fn clear_unused_vertices_2_method_info() -> &'static ::unity::il2cpp::MethodInfo {
253 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[7]
254 }
255
256 pub fn clear_unused_vertices_3_method_info() -> &'static ::unity::il2cpp::MethodInfo {
257 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[8]
258 }
259
260 pub fn sort_geometry_method_info() -> &'static ::unity::il2cpp::MethodInfo {
261 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[9]
262 }
263
264 pub fn sort_geometry_2_method_info() -> &'static ::unity::il2cpp::MethodInfo {
265 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[10]
266 }
267
268 pub fn swap_vertex_data_method_info() -> &'static ::unity::il2cpp::MethodInfo {
269 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[11]
270 }
271
272 pub fn cctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
273 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[12]
274 }
275}
276
277#[cfg(feature = "tm_pro-tmp_meshinfo")]
278#[doc(hidden)]
279pub mod prelude {
280 pub use super::TMP_MeshInfo;
281 #[cfg(feature = "system-object")]
282 pub use crate::system::object::IObjectMethods;
283 #[cfg(feature = "system-valuetype")]
284 pub use crate::system::valuetype::IValueTypeMethods;
285 pub use crate::system::{object::IObject, valuetype::IValueType};
286}