Skip to main content

engage/generated/unity_engine/experimental/rendering/universal/
renderobjects.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "unity_engine-experimental-rendering-universal-renderobjects-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::{
9        system::object::{IObject, Object},
10        unity_engine::{
11            object_2::{IObject_2, Object_2},
12            rendering::universal::scriptablerendererfeature::{IScriptableRendererFeature, ScriptableRendererFeature},
13            scriptableobject::{IScriptableObject, ScriptableObject},
14        },
15    };
16
17    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/experimental/rendering/universal/renderobjects/RenderObjects_FilterSettings.md"))]
18    #[::unity::class(namespace = "UnityEngine.Experimental.Rendering.Universal", name = "RenderObjects.FilterSettings")]
19    #[parent(crate::system::object::Object)]
20    pub struct RenderObjects_FilterSettings {
21        #[offset(16)]
22        #[rename(name = "RenderQueueType")]
23        pub render_queue_type: crate::unity_engine::experimental::rendering::universal::renderqueuetype::RenderQueueType,
24        #[offset(20)]
25        #[rename(name = "LayerMask")]
26        pub layer_mask: crate::unity_engine::layermask::LayerMask,
27        #[offset(24)]
28        #[rename(name = "PassNames")]
29        pub pass_names: ::unity::Array<::unity::Il2CppString>,
30    }
31
32    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/experimental/rendering/universal/renderobjects/RenderObjects_RenderObjectsSettings.md"))]
33    #[::unity::class(namespace = "UnityEngine.Experimental.Rendering.Universal", name = "RenderObjects.RenderObjectsSettings")]
34    #[parent(crate::system::object::Object)]
35    pub struct RenderObjects_RenderObjectsSettings {
36        #[offset(16)]
37        #[rename(name = "passTag")]
38        pub pass_tag: ::unity::Il2CppString,
39        #[offset(24)]
40        #[rename(name = "Event")]
41        pub event: crate::unity_engine::rendering::universal::renderpassevent::RenderPassEvent,
42        #[offset(32)]
43        #[rename(name = "filterSettings")]
44        pub filter_settings: crate::unity_engine::experimental::rendering::universal::renderobjects::RenderObjects_FilterSettings,
45        #[offset(40)]
46        #[rename(name = "overrideMaterial")]
47        pub override_material: crate::unity_engine::material::Material,
48        #[offset(48)]
49        #[rename(name = "overrideMaterialPassIndex")]
50        pub override_material_pass_index: i32,
51        #[offset(52)]
52        #[rename(name = "overrideDepthState")]
53        pub override_depth_state: bool,
54        #[offset(56)]
55        #[rename(name = "depthCompareFunction")]
56        pub depth_compare_function: crate::unity_engine::rendering::comparefunction::CompareFunction,
57        #[offset(60)]
58        #[rename(name = "enableWrite")]
59        pub enable_write: bool,
60        #[offset(64)]
61        #[rename(name = "stencilSettings")]
62        pub stencil_settings: crate::unity_engine::rendering::universal::stencilstatedata::StencilStateData,
63        #[offset(72)]
64        #[rename(name = "cameraSettings")]
65        pub camera_settings: crate::unity_engine::experimental::rendering::universal::renderobjects::RenderObjects_CustomCameraSettings,
66    }
67
68    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/experimental/rendering/universal/renderobjects/RenderObjects_CustomCameraSettings.md"))]
69    #[::unity::class(namespace = "UnityEngine.Experimental.Rendering.Universal", name = "RenderObjects.CustomCameraSettings")]
70    #[parent(crate::system::object::Object)]
71    pub struct RenderObjects_CustomCameraSettings {
72        #[offset(16)]
73        #[rename(name = "overrideCamera")]
74        pub override_camera: bool,
75        #[offset(17)]
76        #[rename(name = "restoreCamera")]
77        pub restore_camera: bool,
78        #[offset(20)]
79        #[rename(name = "offset")]
80        pub offset: crate::unity_engine::vector4::Vector4,
81        #[offset(36)]
82        #[rename(name = "cameraFieldOfView")]
83        pub camera_field_of_view: f32,
84    }
85
86    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/experimental/rendering/universal/renderobjects/RenderObjects.md"))]
87    #[::unity::class(namespace = "UnityEngine.Experimental.Rendering.Universal", name = "RenderObjects")]
88    #[parent(crate::unity_engine::rendering::universal::scriptablerendererfeature::ScriptableRendererFeature)]
89    pub struct RenderObjects {
90        #[offset(32)]
91        #[rename(name = "settings")]
92        pub settings: crate::unity_engine::experimental::rendering::universal::renderobjects::RenderObjects_RenderObjectsSettings,
93        #[offset(40)]
94        #[rename(name = "renderObjectsPass")]
95        pub render_objects_pass: crate::unity_engine::experimental::rendering::universal::renderobjectspass::RenderObjectsPass,
96    }
97}
98
99#[cfg(feature = "unity_engine-experimental-rendering-universal-renderobjects-types")]
100pub use __types::*;
101
102#[cfg(feature = "unity_engine-experimental-rendering-universal-renderobjects")]
103pub trait IRenderObjects_FilterSettingsMethods: IRenderObjects_FilterSettings {
104    #[doc = "`.ctor()` overload"]
105    fn ctor(self) -> () {
106        unsafe {
107            let __receiver =
108                <RenderObjects_FilterSettings as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
109            ::unity::il2cpp_call!((::unity::module_base()+0x2cb8690usize)as*mut u8,();
110(RenderObjects_FilterSettings)__receiver)
111        }
112    }
113}
114
115#[cfg(feature = "unity_engine-experimental-rendering-universal-renderobjects")]
116impl<__T: IRenderObjects_FilterSettings> IRenderObjects_FilterSettingsMethods for __T {}
117
118#[cfg(feature = "unity_engine-experimental-rendering-universal-renderobjects")]
119impl RenderObjects_FilterSettings {
120    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
121        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
122    }
123}
124
125#[cfg(feature = "unity_engine-experimental-rendering-universal-renderobjects")]
126impl RenderObjects_FilterSettings {
127    #[doc = "`.ctor()` — no args"]
128    pub fn new() -> Self {
129        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
130            panic!(
131                "{}
132::{}
133 failed to instantiate",
134                ::core::stringify!(RenderObjects_FilterSettings),
135                ::core::stringify!(new),
136            )
137        });
138        <Self as IRenderObjects_FilterSettingsMethods>::ctor(this);
139        this
140    }
141}
142
143#[cfg(feature = "unity_engine-experimental-rendering-universal-renderobjects")]
144pub trait IRenderObjects_RenderObjectsSettingsMethods: IRenderObjects_RenderObjectsSettings {
145    #[doc = "`.ctor()` overload"]
146    fn ctor(self) -> () {
147        unsafe {
148            let __receiver = <RenderObjects_RenderObjectsSettings as ::unity::FromIlInstance>::from_il_instance(
149                <Self as ::unity::SystemObject>::as_instance(self),
150            );
151            ::unity::il2cpp_call!((::unity::module_base()+0x2cb86d0usize)as*mut u8,();
152(RenderObjects_RenderObjectsSettings)__receiver)
153        }
154    }
155}
156
157#[cfg(feature = "unity_engine-experimental-rendering-universal-renderobjects")]
158impl<__T: IRenderObjects_RenderObjectsSettings> IRenderObjects_RenderObjectsSettingsMethods for __T {}
159
160#[cfg(feature = "unity_engine-experimental-rendering-universal-renderobjects")]
161impl RenderObjects_RenderObjectsSettings {
162    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
163        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
164    }
165}
166
167#[cfg(feature = "unity_engine-experimental-rendering-universal-renderobjects")]
168impl RenderObjects_RenderObjectsSettings {
169    #[doc = "`.ctor()` — no args"]
170    pub fn new() -> Self {
171        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
172            panic!(
173                "{}
174::{}
175 failed to instantiate",
176                ::core::stringify!(RenderObjects_RenderObjectsSettings),
177                ::core::stringify!(new),
178            )
179        });
180        <Self as IRenderObjects_RenderObjectsSettingsMethods>::ctor(this);
181        this
182    }
183}
184
185#[cfg(feature = "unity_engine-experimental-rendering-universal-renderobjects")]
186pub trait IRenderObjects_CustomCameraSettingsMethods: IRenderObjects_CustomCameraSettings {
187    #[doc = "`.ctor()` overload"]
188    fn ctor(self) -> () {
189        unsafe {
190            let __receiver =
191                <RenderObjects_CustomCameraSettings as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
192            ::unity::il2cpp_call!((::unity::module_base()+0x2cb8670usize)as*mut u8,();
193(RenderObjects_CustomCameraSettings)__receiver)
194        }
195    }
196}
197
198#[cfg(feature = "unity_engine-experimental-rendering-universal-renderobjects")]
199impl<__T: IRenderObjects_CustomCameraSettings> IRenderObjects_CustomCameraSettingsMethods for __T {}
200
201#[cfg(feature = "unity_engine-experimental-rendering-universal-renderobjects")]
202impl RenderObjects_CustomCameraSettings {
203    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
204        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
205    }
206}
207
208#[cfg(feature = "unity_engine-experimental-rendering-universal-renderobjects")]
209impl RenderObjects_CustomCameraSettings {
210    #[doc = "`.ctor()` — no args"]
211    pub fn new() -> Self {
212        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
213            panic!(
214                "{}
215::{}
216 failed to instantiate",
217                ::core::stringify!(RenderObjects_CustomCameraSettings),
218                ::core::stringify!(new),
219            )
220        });
221        <Self as IRenderObjects_CustomCameraSettingsMethods>::ctor(this);
222        this
223    }
224}
225
226#[cfg(feature = "unity_engine-experimental-rendering-universal-renderobjects")]
227pub trait IRenderObjectsMethods: IRenderObjects {
228    #[doc = "`Create()` overload"]
229    fn create(self) -> () {
230        unsafe {
231            let __receiver = <RenderObjects as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
232            {
233                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
234                let __vi = *__vt.get(5usize).unwrap_or_else(|| {
235                    panic!(
236                        "unity: virtual slot {}
237 out of range (vtable len {}
238) on the runtime class behind {}
239 (method `{}
240`)",
241                        5usize,
242                        __vt.len(),
243                        <RenderObjects as ::unity::ClassIdentity>::NAME,
244                        "Create",
245                    )
246                });
247                let __inner: extern "C" fn(RenderObjects, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
248                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
249                __inner(__receiver, __mi)
250            }
251        }
252    }
253    #[doc = "`AddRenderPasses(crate::unity_engine::rendering::universal::scriptablerenderer::ScriptableRenderer, *mutcrate::unity_engine::rendering::universal::renderingdata::RenderingData)` overload"]
254    fn add_render_passes(
255        self,
256        renderer: impl ::core::convert::Into<crate::unity_engine::rendering::universal::scriptablerenderer::ScriptableRenderer>,
257    ) -> crate::unity_engine::rendering::universal::renderingdata::RenderingData {
258        unsafe {
259            let __receiver = <RenderObjects as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
260            let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::rendering::universal::renderingdata::RenderingData>::uninit();
261            {
262                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
263                let __vi = *__vt.get(6usize).unwrap_or_else(|| {
264                    panic!(
265                        "unity: virtual slot {}
266 out of range (vtable len {}
267) on the runtime class behind {}
268 (method `{}
269`)",
270                        6usize,
271                        __vt.len(),
272                        <RenderObjects as ::unity::ClassIdentity>::NAME,
273                        "AddRenderPasses",
274                    )
275                });
276                let __inner: extern "C" fn(
277                    RenderObjects,
278                    crate::unity_engine::rendering::universal::scriptablerenderer::ScriptableRenderer,
279                    *mut crate::unity_engine::rendering::universal::renderingdata::RenderingData,
280                    ::unity::OptionalMethod,
281                ) -> () = ::core::mem::transmute(__vi.method_ptr);
282                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
283                __inner(__receiver, ::core::convert::Into::into(renderer), __out_0.as_mut_ptr(), __mi)
284            };
285            __out_0.assume_init()
286        }
287    }
288    #[doc = "`.ctor()` overload"]
289    fn ctor(self) -> () {
290        unsafe {
291            let __receiver = <RenderObjects as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
292            ::unity::il2cpp_call!((::unity::module_base()+0x31a9aa0usize)as*mut u8,();
293(RenderObjects)__receiver)
294        }
295    }
296}
297
298#[cfg(feature = "unity_engine-experimental-rendering-universal-renderobjects")]
299impl<__T: IRenderObjects> IRenderObjectsMethods for __T {}
300
301#[cfg(feature = "unity_engine-experimental-rendering-universal-renderobjects")]
302impl RenderObjects {
303    pub fn create_method_info() -> &'static ::unity::il2cpp::MethodInfo {
304        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
305    }
306
307    pub fn add_render_passes_method_info() -> &'static ::unity::il2cpp::MethodInfo {
308        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
309    }
310
311    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
312        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
313    }
314}
315
316#[cfg(feature = "unity_engine-experimental-rendering-universal-renderobjects")]
317impl RenderObjects {
318    #[doc = "Direct (non-virtual) call to `RenderObjects`'s own `Create`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
319    pub unsafe fn create(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
320        let __mi = Self::create_method_info();
321        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
322        __inner(this.into(), ::core::option::Option::None)
323    }
324
325    #[doc = "Direct (non-virtual) call to `RenderObjects`'s own `AddRenderPasses`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
326    pub unsafe fn add_render_passes(
327        this: impl ::core::convert::Into<::unity::IlInstance>,
328        renderer: crate::unity_engine::rendering::universal::scriptablerenderer::ScriptableRenderer,
329        rendering_data: *mut crate::unity_engine::rendering::universal::renderingdata::RenderingData,
330    ) -> () {
331        let __mi = Self::add_render_passes_method_info();
332        let __inner: extern "C" fn(
333            ::unity::IlInstance,
334            crate::unity_engine::rendering::universal::scriptablerenderer::ScriptableRenderer,
335            *mut crate::unity_engine::rendering::universal::renderingdata::RenderingData,
336            ::unity::OptionalMethod,
337        ) -> () = ::core::mem::transmute(__mi.method_ptr);
338        __inner(this.into(), renderer, rendering_data, ::core::option::Option::None)
339    }
340}
341
342#[cfg(feature = "unity_engine-experimental-rendering-universal-renderobjects")]
343impl RenderObjects {
344    #[doc = "`.ctor()` — no args"]
345    pub fn new() -> Self {
346        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
347            panic!(
348                "{}
349::{}
350 failed to instantiate",
351                ::core::stringify!(RenderObjects),
352                ::core::stringify!(new),
353            )
354        });
355        <Self as IRenderObjectsMethods>::ctor(this);
356        this
357    }
358}
359
360#[cfg(feature = "unity_engine-experimental-rendering-universal-renderobjects")]
361#[doc(hidden)]
362pub mod prelude {
363    pub use super::{
364        IRenderObjects, IRenderObjectsMethods, IRenderObjects_CustomCameraSettings, IRenderObjects_CustomCameraSettingsMethods,
365        IRenderObjects_FilterSettings, IRenderObjects_FilterSettingsMethods, IRenderObjects_RenderObjectsSettings,
366        IRenderObjects_RenderObjectsSettingsMethods, RenderObjects, RenderObjects_CustomCameraSettings, RenderObjects_FilterSettings,
367        RenderObjects_RenderObjectsSettings,
368    };
369    #[cfg(feature = "system-object")]
370    pub use crate::system::object::IObjectMethods;
371    #[cfg(feature = "unity_engine-object_2")]
372    pub use crate::unity_engine::object_2::IObject_2Methods;
373    #[cfg(feature = "unity_engine-rendering-universal-scriptablerendererfeature")]
374    pub use crate::unity_engine::rendering::universal::scriptablerendererfeature::IScriptableRendererFeatureMethods;
375    #[cfg(feature = "unity_engine-scriptableobject")]
376    pub use crate::unity_engine::scriptableobject::IScriptableObjectMethods;
377    pub use crate::{
378        system::object::IObject,
379        unity_engine::{
380            object_2::IObject_2, rendering::universal::scriptablerendererfeature::IScriptableRendererFeature, scriptableobject::IScriptableObject,
381        },
382    };
383}