Skip to main content

engage/generated/unity_engine/rendering/universal/
forwardrenderer.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "unity_engine-rendering-universal-forwardrenderer-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::{
9        system::{
10            object::{IObject, Object},
11            valuetype::{IValueType, ValueType},
12        },
13        unity_engine::rendering::universal::scriptablerenderer::{IScriptableRenderer, ScriptableRenderer},
14    };
15
16    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/rendering/universal/forwardrenderer/ForwardRenderer.md"))]
17    #[::unity::class(namespace = "UnityEngine.Rendering.Universal", name = "ForwardRenderer")]
18    #[parent(crate::unity_engine::rendering::universal::scriptablerenderer::ScriptableRenderer)]
19    pub struct ForwardRenderer {
20        #[static_field]
21        #[rename(name = "k_DepthStencilBufferBits")]
22        pub k_depth_stencil_buffer_bits: i32,
23        #[offset(144)]
24        #[rename(name = "m_ColorGradingLutPass")]
25        pub m_color_grading_lut_pass: crate::unity_engine::rendering::universal::internal::colorgradinglutpass::ColorGradingLutPass,
26        #[offset(152)]
27        #[rename(name = "m_DepthPrepass")]
28        pub m_depth_prepass: crate::unity_engine::rendering::universal::internal::depthonlypass::DepthOnlyPass,
29        #[offset(160)]
30        #[rename(name = "m_DepthNormalPrepass")]
31        pub m_depth_normal_prepass: crate::unity_engine::rendering::universal::internal::depthnormalonlypass::DepthNormalOnlyPass,
32        #[offset(168)]
33        #[rename(name = "m_MainLightShadowCasterPass")]
34        pub m_main_light_shadow_caster_pass:
35            crate::unity_engine::rendering::universal::internal::mainlightshadowcasterpass::MainLightShadowCasterPass,
36        #[offset(176)]
37        #[rename(name = "m_AdditionalLightsShadowCasterPass")]
38        pub m_additional_lights_shadow_caster_pass:
39            crate::unity_engine::rendering::universal::internal::additionallightsshadowcasterpass::AdditionalLightsShadowCasterPass,
40        #[offset(184)]
41        #[rename(name = "m_GBufferPass")]
42        pub m_g_buffer_pass: crate::unity_engine::rendering::universal::internal::gbufferpass::GBufferPass,
43        #[offset(192)]
44        #[rename(name = "m_GBufferCopyDepthPass")]
45        pub m_g_buffer_copy_depth_pass: crate::unity_engine::rendering::universal::internal::copydepthpass::CopyDepthPass,
46        #[offset(200)]
47        #[rename(name = "m_TileDepthRangePass")]
48        pub m_tile_depth_range_pass: crate::unity_engine::rendering::universal::internal::tiledepthrangepass::TileDepthRangePass,
49        #[offset(208)]
50        #[rename(name = "m_TileDepthRangeExtraPass")]
51        pub m_tile_depth_range_extra_pass: crate::unity_engine::rendering::universal::internal::tiledepthrangepass::TileDepthRangePass,
52        #[offset(216)]
53        #[rename(name = "m_DeferredPass")]
54        pub m_deferred_pass: crate::unity_engine::rendering::universal::internal::deferredpass::DeferredPass,
55        #[offset(224)]
56        #[rename(name = "m_RenderOpaqueForwardOnlyPass")]
57        pub m_render_opaque_forward_only_pass: crate::unity_engine::rendering::universal::internal::drawobjectspass::DrawObjectsPass,
58        #[offset(232)]
59        #[rename(name = "m_RenderOpaqueForwardPass")]
60        pub m_render_opaque_forward_pass: crate::unity_engine::rendering::universal::internal::drawobjectspass::DrawObjectsPass,
61        #[offset(240)]
62        #[rename(name = "m_DrawSkyboxPass")]
63        pub m_draw_skybox_pass: crate::unity_engine::rendering::universal::drawskyboxpass::DrawSkyboxPass,
64        #[offset(248)]
65        #[rename(name = "m_CopyDepthPass")]
66        pub m_copy_depth_pass: crate::unity_engine::rendering::universal::internal::copydepthpass::CopyDepthPass,
67        #[offset(256)]
68        #[rename(name = "m_CopyColorPass")]
69        pub m_copy_color_pass: crate::unity_engine::rendering::universal::internal::copycolorpass::CopyColorPass,
70        #[offset(264)]
71        #[rename(name = "m_TransparentSettingsPass")]
72        pub m_transparent_settings_pass: crate::unity_engine::rendering::universal::transparentsettingspass::TransparentSettingsPass,
73        #[offset(272)]
74        #[rename(name = "m_RenderTransparentForwardPass")]
75        pub m_render_transparent_forward_pass: crate::unity_engine::rendering::universal::internal::drawobjectspass::DrawObjectsPass,
76        #[offset(280)]
77        #[rename(name = "m_OnRenderObjectCallbackPass")]
78        pub m_on_render_object_callback_pass:
79            crate::unity_engine::rendering::universal::invokeonrenderobjectcallbackpass::InvokeOnRenderObjectCallbackPass,
80        #[offset(288)]
81        #[rename(name = "m_PostProcessPass")]
82        pub m_post_process_pass: crate::unity_engine::rendering::universal::internal::postprocesspass::PostProcessPass,
83        #[offset(296)]
84        #[rename(name = "m_FinalPostProcessPass")]
85        pub m_final_post_process_pass: crate::unity_engine::rendering::universal::internal::postprocesspass::PostProcessPass,
86        #[offset(304)]
87        #[rename(name = "m_FinalBlitPass")]
88        pub m_final_blit_pass: crate::unity_engine::rendering::universal::internal::finalblitpass::FinalBlitPass,
89        #[offset(312)]
90        #[rename(name = "m_CapturePass")]
91        pub m_capture_pass: crate::unity_engine::rendering::universal::capturepass::CapturePass,
92        #[offset(320)]
93        #[rename(name = "m_XROcclusionMeshPass")]
94        pub m_xr_occlusion_mesh_pass: crate::unity_engine::rendering::universal::xrocclusionmeshpass::XROcclusionMeshPass,
95        #[offset(328)]
96        #[rename(name = "m_XRCopyDepthPass")]
97        pub m_xr_copy_depth_pass: crate::unity_engine::rendering::universal::internal::copydepthpass::CopyDepthPass,
98        #[offset(336)]
99        #[rename(name = "m_ActiveCameraColorAttachment")]
100        pub m_active_camera_color_attachment: crate::unity_engine::rendering::universal::rendertargethandle::RenderTargetHandle,
101        #[offset(384)]
102        #[rename(name = "m_ActiveCameraDepthAttachment")]
103        pub m_active_camera_depth_attachment: crate::unity_engine::rendering::universal::rendertargethandle::RenderTargetHandle,
104        #[offset(432)]
105        #[rename(name = "m_CameraColorAttachment")]
106        pub m_camera_color_attachment: crate::unity_engine::rendering::universal::rendertargethandle::RenderTargetHandle,
107        #[offset(480)]
108        #[rename(name = "m_CameraDepthAttachment")]
109        pub m_camera_depth_attachment: crate::unity_engine::rendering::universal::rendertargethandle::RenderTargetHandle,
110        #[offset(528)]
111        #[rename(name = "m_DepthTexture")]
112        pub m_depth_texture: crate::unity_engine::rendering::universal::rendertargethandle::RenderTargetHandle,
113        #[offset(576)]
114        #[rename(name = "m_NormalsTexture")]
115        pub m_normals_texture: crate::unity_engine::rendering::universal::rendertargethandle::RenderTargetHandle,
116        #[offset(624)]
117        #[rename(name = "m_GBufferHandles")]
118        pub m_g_buffer_handles: ::unity::Array<crate::unity_engine::rendering::universal::rendertargethandle::RenderTargetHandle>,
119        #[offset(632)]
120        #[rename(name = "m_OpaqueColor")]
121        pub m_opaque_color: crate::unity_engine::rendering::universal::rendertargethandle::RenderTargetHandle,
122        #[offset(680)]
123        #[rename(name = "m_AfterPostProcessColor")]
124        pub m_after_post_process_color: crate::unity_engine::rendering::universal::rendertargethandle::RenderTargetHandle,
125        #[offset(728)]
126        #[rename(name = "m_ColorGradingLut")]
127        pub m_color_grading_lut: crate::unity_engine::rendering::universal::rendertargethandle::RenderTargetHandle,
128        #[offset(776)]
129        #[rename(name = "m_DepthInfoTexture")]
130        pub m_depth_info_texture: crate::unity_engine::rendering::universal::rendertargethandle::RenderTargetHandle,
131        #[offset(824)]
132        #[rename(name = "m_TileDepthInfoTexture")]
133        pub m_tile_depth_info_texture: crate::unity_engine::rendering::universal::rendertargethandle::RenderTargetHandle,
134        #[offset(872)]
135        #[rename(name = "m_ForwardLights")]
136        pub m_forward_lights: crate::unity_engine::rendering::universal::internal::forwardlights::ForwardLights,
137        #[offset(880)]
138        #[rename(name = "m_DeferredLights")]
139        pub m_deferred_lights: crate::unity_engine::rendering::universal::internal::deferredlights::DeferredLights,
140        #[offset(888)]
141        #[rename(name = "m_RenderingMode")]
142        pub m_rendering_mode: crate::unity_engine::rendering::universal::renderingmode::RenderingMode,
143        #[offset(892)]
144        #[rename(name = "m_DefaultStencilState")]
145        pub m_default_stencil_state: crate::unity_engine::rendering::stencilstate::StencilState,
146        #[offset(904)]
147        #[rename(name = "m_BlitMaterial")]
148        pub m_blit_material: crate::unity_engine::material::Material,
149        #[offset(912)]
150        #[rename(name = "m_CopyDepthMaterial")]
151        pub m_copy_depth_material: crate::unity_engine::material::Material,
152        #[offset(920)]
153        #[rename(name = "m_SamplingMaterial")]
154        pub m_sampling_material: crate::unity_engine::material::Material,
155        #[offset(928)]
156        #[rename(name = "m_ScreenspaceShadowsMaterial")]
157        pub m_screenspace_shadows_material: crate::unity_engine::material::Material,
158        #[offset(936)]
159        #[rename(name = "m_TileDepthInfoMaterial")]
160        pub m_tile_depth_info_material: crate::unity_engine::material::Material,
161        #[offset(944)]
162        #[rename(name = "m_TileDeferredMaterial")]
163        pub m_tile_deferred_material: crate::unity_engine::material::Material,
164        #[offset(952)]
165        #[rename(name = "m_StencilDeferredMaterial")]
166        pub m_stencil_deferred_material: crate::unity_engine::material::Material,
167    }
168
169    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/rendering/universal/forwardrenderer/ForwardRenderer_Profiling.md"))]
170    #[::unity::class(namespace = "UnityEngine.Rendering.Universal", name = "ForwardRenderer.Profiling")]
171    #[parent(crate::system::object::Object)]
172    pub struct ForwardRenderer_Profiling {
173        #[static_field]
174        #[rename(name = "k_Name")]
175        pub k_name: ::unity::Il2CppString,
176        #[static_field]
177        #[rename(name = "createCameraRenderTarget")]
178        pub create_camera_render_target: crate::unity_engine::rendering::profilingsampler::ProfilingSampler,
179    }
180
181    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/rendering/universal/forwardrenderer/ForwardRenderer_RenderPassInputSummary.md"))]
182    #[repr(C)]
183    #[derive(::core::clone::Clone, ::core::marker::Copy)]
184    pub struct ForwardRenderer_RenderPassInputSummary {
185        pub requires_depth_texture: bool,
186        pub requires_depth_prepass: bool,
187        pub requires_normals_texture: bool,
188        pub requires_color_texture: bool,
189    }
190    impl ::unity::ClassIdentity for ForwardRenderer_RenderPassInputSummary {
191        const NAME: &'static str = "ForwardRenderer.RenderPassInputSummary";
192        const NAMESPACE: &'static str = "UnityEngine.Rendering.Universal";
193
194        fn class() -> ::unity::Class {
195            static CACHE: ::std::sync::OnceLock<::unity::Class> = ::std::sync::OnceLock::new();
196            *CACHE.get_or_init(|| ::unity::Class::lookup(Self::NAMESPACE, Self::NAME))
197        }
198    }
199    impl ::unity::IlType for ForwardRenderer_RenderPassInputSummary {
200        fn il_type() -> &'static ::unity::il2cpp::Il2CppType {
201            &<Self as ::unity::ClassIdentity>::class().raw()._1.byval_arg
202        }
203    }
204}
205
206#[cfg(feature = "unity_engine-rendering-universal-forwardrenderer-types")]
207pub use __types::*;
208
209#[cfg(feature = "unity_engine-rendering-universal-forwardrenderer")]
210pub trait IForwardRendererMethods: IForwardRenderer {
211    #[doc = "`get_renderingMode()` overload"]
212    fn get_rendering_mode(self) -> crate::unity_engine::rendering::universal::renderingmode::RenderingMode {
213        unsafe {
214            let __receiver = <ForwardRenderer as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
215            ::unity::il2cpp_call!((::unity::module_base()+0x2eec430usize)as*mut u8,crate::unity_engine::rendering::universal::renderingmode::RenderingMode;
216(ForwardRenderer)__receiver)
217        }
218    }
219    #[doc = "`get_actualRenderingMode()` overload"]
220    fn get_actual_rendering_mode(self) -> crate::unity_engine::rendering::universal::renderingmode::RenderingMode {
221        unsafe {
222            let __receiver = <ForwardRenderer as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
223            ::unity::il2cpp_call!((::unity::module_base()+0x2eec440usize)as*mut u8,crate::unity_engine::rendering::universal::renderingmode::RenderingMode;
224(ForwardRenderer)__receiver)
225        }
226    }
227    #[doc = "`get_accurateGbufferNormals()` overload"]
228    fn get_accurate_gbuffer_normals(self) -> bool {
229        unsafe {
230            let __receiver = <ForwardRenderer as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
231            ::unity::il2cpp_call!((::unity::module_base()+0x2eec480usize)as*mut u8,bool;
232(ForwardRenderer)__receiver)
233        }
234    }
235    #[doc = "`.ctor(crate::unity_engine::rendering::universal::forwardrendererdata::ForwardRendererData)` overload"]
236    fn ctor(self, data: impl ::core::convert::Into<crate::unity_engine::rendering::universal::forwardrendererdata::ForwardRendererData>) -> () {
237        unsafe {
238            let __receiver = <ForwardRenderer as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
239            ::unity::il2cpp_call!((::unity::module_base()+0x2eec4a0usize)as*mut u8,();
240(ForwardRenderer)__receiver,(crate::unity_engine::rendering::universal::forwardrendererdata::ForwardRendererData)::core::convert::Into::into(data))
241        }
242    }
243    #[doc = "`Dispose(bool)` overload"]
244    fn dispose(self, disposing: impl ::core::convert::Into<bool>) -> () {
245        unsafe {
246            let __receiver = <ForwardRenderer as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
247            {
248                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
249                let __vi = *__vt.get(5usize).unwrap_or_else(|| {
250                    panic!(
251                        "unity: virtual slot {}
252 out of range (vtable len {}
253) on the runtime class behind {}
254 (method `{}
255`)",
256                        5usize,
257                        __vt.len(),
258                        <ForwardRenderer as ::unity::ClassIdentity>::NAME,
259                        "Dispose",
260                    )
261                });
262                let __inner: extern "C" fn(ForwardRenderer, bool, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
263                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
264                __inner(__receiver, ::core::convert::Into::into(disposing), __mi)
265            }
266        }
267    }
268    #[doc = "`Setup(crate::unity_engine::rendering::scriptablerendercontext::ScriptableRenderContext, *mutcrate::unity_engine::rendering::universal::renderingdata::RenderingData)` overload"]
269    fn setup(
270        self,
271        context: impl ::core::convert::Into<crate::unity_engine::rendering::scriptablerendercontext::ScriptableRenderContext>,
272    ) -> crate::unity_engine::rendering::universal::renderingdata::RenderingData {
273        unsafe {
274            let __receiver = <ForwardRenderer as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
275            let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::rendering::universal::renderingdata::RenderingData>::uninit();
276            {
277                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
278                let __vi = *__vt.get(6usize).unwrap_or_else(|| {
279                    panic!(
280                        "unity: virtual slot {}
281 out of range (vtable len {}
282) on the runtime class behind {}
283 (method `{}
284`)",
285                        6usize,
286                        __vt.len(),
287                        <ForwardRenderer as ::unity::ClassIdentity>::NAME,
288                        "Setup",
289                    )
290                });
291                let __inner: extern "C" fn(
292                    ForwardRenderer,
293                    crate::unity_engine::rendering::scriptablerendercontext::ScriptableRenderContext,
294                    *mut crate::unity_engine::rendering::universal::renderingdata::RenderingData,
295                    ::unity::OptionalMethod,
296                ) -> () = ::core::mem::transmute(__vi.method_ptr);
297                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
298                __inner(__receiver, ::core::convert::Into::into(context), __out_0.as_mut_ptr(), __mi)
299            };
300            __out_0.assume_init()
301        }
302    }
303    #[doc = "`SetupLights(crate::unity_engine::rendering::scriptablerendercontext::ScriptableRenderContext, *mutcrate::unity_engine::rendering::universal::renderingdata::RenderingData)` overload"]
304    fn setup_lights(
305        self,
306        context: impl ::core::convert::Into<crate::unity_engine::rendering::scriptablerendercontext::ScriptableRenderContext>,
307    ) -> crate::unity_engine::rendering::universal::renderingdata::RenderingData {
308        unsafe {
309            let __receiver = <ForwardRenderer as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
310            let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::rendering::universal::renderingdata::RenderingData>::uninit();
311            {
312                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
313                let __vi = *__vt.get(7usize).unwrap_or_else(|| {
314                    panic!(
315                        "unity: virtual slot {}
316 out of range (vtable len {}
317) on the runtime class behind {}
318 (method `{}
319`)",
320                        7usize,
321                        __vt.len(),
322                        <ForwardRenderer as ::unity::ClassIdentity>::NAME,
323                        "SetupLights",
324                    )
325                });
326                let __inner: extern "C" fn(
327                    ForwardRenderer,
328                    crate::unity_engine::rendering::scriptablerendercontext::ScriptableRenderContext,
329                    *mut crate::unity_engine::rendering::universal::renderingdata::RenderingData,
330                    ::unity::OptionalMethod,
331                ) -> () = ::core::mem::transmute(__vi.method_ptr);
332                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
333                __inner(__receiver, ::core::convert::Into::into(context), __out_0.as_mut_ptr(), __mi)
334            };
335            __out_0.assume_init()
336        }
337    }
338    #[doc = "`SetupCullingParameters(*mutcrate::unity_engine::rendering::scriptablecullingparameters::ScriptableCullingParameters, *mutcrate::unity_engine::rendering::universal::cameradata::CameraData)` overload"]
339    fn setup_culling_parameters(
340        self,
341    ) -> (
342        crate::unity_engine::rendering::scriptablecullingparameters::ScriptableCullingParameters,
343        crate::unity_engine::rendering::universal::cameradata::CameraData,
344    ) {
345        unsafe {
346            let __receiver = <ForwardRenderer as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
347            let mut __out_0 =
348                ::core::mem::MaybeUninit::<crate::unity_engine::rendering::scriptablecullingparameters::ScriptableCullingParameters>::uninit();
349            let mut __out_1 = ::core::mem::MaybeUninit::<crate::unity_engine::rendering::universal::cameradata::CameraData>::uninit();
350            {
351                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
352                let __vi = *__vt.get(8usize).unwrap_or_else(|| {
353                    panic!(
354                        "unity: virtual slot {}
355 out of range (vtable len {}
356) on the runtime class behind {}
357 (method `{}
358`)",
359                        8usize,
360                        __vt.len(),
361                        <ForwardRenderer as ::unity::ClassIdentity>::NAME,
362                        "SetupCullingParameters",
363                    )
364                });
365                let __inner: extern "C" fn(
366                    ForwardRenderer,
367                    *mut crate::unity_engine::rendering::scriptablecullingparameters::ScriptableCullingParameters,
368                    *mut crate::unity_engine::rendering::universal::cameradata::CameraData,
369                    ::unity::OptionalMethod,
370                ) -> () = ::core::mem::transmute(__vi.method_ptr);
371                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
372                __inner(__receiver, __out_0.as_mut_ptr(), __out_1.as_mut_ptr(), __mi)
373            };
374            (__out_0.assume_init(), __out_1.assume_init())
375        }
376    }
377    #[doc = "`FinishRendering(crate::unity_engine::rendering::commandbuffer::CommandBuffer)` overload"]
378    fn finish_rendering(self, cmd: impl ::core::convert::Into<crate::unity_engine::rendering::commandbuffer::CommandBuffer>) -> () {
379        unsafe {
380            let __receiver = <ForwardRenderer as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
381            {
382                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
383                let __vi = *__vt.get(9usize).unwrap_or_else(|| {
384                    panic!(
385                        "unity: virtual slot {}
386 out of range (vtable len {}
387) on the runtime class behind {}
388 (method `{}
389`)",
390                        9usize,
391                        __vt.len(),
392                        <ForwardRenderer as ::unity::ClassIdentity>::NAME,
393                        "FinishRendering",
394                    )
395                });
396                let __inner: extern "C" fn(
397                    ForwardRenderer,
398                    crate::unity_engine::rendering::commandbuffer::CommandBuffer,
399                    ::unity::OptionalMethod,
400                ) -> () = ::core::mem::transmute(__vi.method_ptr);
401                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
402                __inner(__receiver, ::core::convert::Into::into(cmd), __mi)
403            }
404        }
405    }
406    #[doc = "`EnqueueDeferred(*mutcrate::unity_engine::rendering::universal::renderingdata::RenderingData, bool, bool, bool)` overload"]
407    fn enqueue_deferred(
408        self,
409        has_depth_prepass: impl ::core::convert::Into<bool>,
410        apply_main_shadow: impl ::core::convert::Into<bool>,
411        apply_additional_shadow: impl ::core::convert::Into<bool>,
412    ) -> crate::unity_engine::rendering::universal::renderingdata::RenderingData {
413        unsafe {
414            let __receiver = <ForwardRenderer as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
415            let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::rendering::universal::renderingdata::RenderingData>::uninit();
416            ::unity::il2cpp_call!((::unity::module_base()+0x2eefbb0usize)as*mut u8,();
417(ForwardRenderer)__receiver,(*mut crate::unity_engine::rendering::universal::renderingdata::RenderingData)__out_0.as_mut_ptr(),(bool)::core::convert::Into::into(has_depth_prepass),(bool)::core::convert::Into::into(apply_main_shadow),(bool)::core::convert::Into::into(apply_additional_shadow));
418            __out_0.assume_init()
419        }
420    }
421    #[doc = "`GetRenderPassInputs(*mutcrate::unity_engine::rendering::universal::renderingdata::RenderingData)` overload"]
422    fn get_render_pass_inputs(
423        self,
424    ) -> (
425        crate::unity_engine::rendering::universal::forwardrenderer::ForwardRenderer_RenderPassInputSummary,
426        crate::unity_engine::rendering::universal::renderingdata::RenderingData,
427    ) {
428        unsafe {
429            let __receiver = <ForwardRenderer as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
430            let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::rendering::universal::renderingdata::RenderingData>::uninit();
431            let __ret = {
432                ::unity::il2cpp_call!((::unity::module_base()+0x2eef0a0usize)as*mut u8,crate::unity_engine::rendering::universal::forwardrenderer::ForwardRenderer_RenderPassInputSummary;
433(ForwardRenderer)__receiver,(*mut crate::unity_engine::rendering::universal::renderingdata::RenderingData)__out_0.as_mut_ptr())
434            };
435            (__ret, __out_0.assume_init())
436        }
437    }
438    #[doc = "`CreateCameraRenderTarget(crate::unity_engine::rendering::scriptablerendercontext::ScriptableRenderContext, *mutcrate::unity_engine::rendertexturedescriptor::RenderTextureDescriptor, bool, bool)` overload"]
439    fn create_camera_render_target(
440        self,
441        context: impl ::core::convert::Into<crate::unity_engine::rendering::scriptablerendercontext::ScriptableRenderContext>,
442        create_color: impl ::core::convert::Into<bool>,
443        create_depth: impl ::core::convert::Into<bool>,
444    ) -> crate::unity_engine::rendertexturedescriptor::RenderTextureDescriptor {
445        unsafe {
446            let __receiver = <ForwardRenderer as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
447            let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::rendertexturedescriptor::RenderTextureDescriptor>::uninit();
448            ::unity::il2cpp_call!((::unity::module_base()+0x2eef830usize)as*mut u8,();
449(ForwardRenderer)__receiver,(crate::unity_engine::rendering::scriptablerendercontext::ScriptableRenderContext)::core::convert::Into::into(context),(*mut crate::unity_engine::rendertexturedescriptor::RenderTextureDescriptor)__out_0.as_mut_ptr(),(bool)::core::convert::Into::into(create_color),(bool)::core::convert::Into::into(create_depth));
450            __out_0.assume_init()
451        }
452    }
453    #[doc = "`PlatformRequiresExplicitMsaaResolve()` overload"]
454    fn platform_requires_explicit_msaa_resolve(self) -> bool {
455        unsafe {
456            let __receiver = <ForwardRenderer as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
457            ::unity::il2cpp_call!((::unity::module_base()+0x2ef0190usize)as*mut u8,bool;
458(ForwardRenderer)__receiver)
459        }
460    }
461    #[doc = "`RequiresIntermediateColorTexture(*mutcrate::unity_engine::rendering::universal::cameradata::CameraData)` overload"]
462    fn requires_intermediate_color_texture(self) -> (bool, crate::unity_engine::rendering::universal::cameradata::CameraData) {
463        unsafe {
464            let __receiver = <ForwardRenderer as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
465            let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::rendering::universal::cameradata::CameraData>::uninit();
466            let __ret = {
467                ::unity::il2cpp_call!((::unity::module_base()+0x2eef610usize)as*mut u8,bool;
468(ForwardRenderer)__receiver,(*mut crate::unity_engine::rendering::universal::cameradata::CameraData)__out_0.as_mut_ptr())
469            };
470            (__ret, __out_0.assume_init())
471        }
472    }
473    #[doc = "`CanCopyDepth(*mutcrate::unity_engine::rendering::universal::cameradata::CameraData)` overload"]
474    fn can_copy_depth(self) -> (bool, crate::unity_engine::rendering::universal::cameradata::CameraData) {
475        unsafe {
476            let __receiver = <ForwardRenderer as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
477            let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::rendering::universal::cameradata::CameraData>::uninit();
478            let __ret = {
479                ::unity::il2cpp_call!((::unity::module_base()+0x2eef570usize)as*mut u8,bool;
480(ForwardRenderer)__receiver,(*mut crate::unity_engine::rendering::universal::cameradata::CameraData)__out_0.as_mut_ptr())
481            };
482            (__ret, __out_0.assume_init())
483        }
484    }
485}
486
487#[cfg(feature = "unity_engine-rendering-universal-forwardrenderer")]
488impl<__T: IForwardRenderer> IForwardRendererMethods for __T {}
489
490#[cfg(feature = "unity_engine-rendering-universal-forwardrenderer")]
491impl ForwardRenderer {
492    pub fn get_rendering_mode_method_info() -> &'static ::unity::il2cpp::MethodInfo {
493        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
494    }
495
496    pub fn get_actual_rendering_mode_method_info() -> &'static ::unity::il2cpp::MethodInfo {
497        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
498    }
499
500    pub fn get_accurate_gbuffer_normals_method_info() -> &'static ::unity::il2cpp::MethodInfo {
501        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
502    }
503
504    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
505        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
506    }
507
508    pub fn dispose_method_info() -> &'static ::unity::il2cpp::MethodInfo {
509        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
510    }
511
512    pub fn setup_method_info() -> &'static ::unity::il2cpp::MethodInfo {
513        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
514    }
515
516    pub fn setup_lights_method_info() -> &'static ::unity::il2cpp::MethodInfo {
517        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
518    }
519
520    pub fn setup_culling_parameters_method_info() -> &'static ::unity::il2cpp::MethodInfo {
521        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[7]
522    }
523
524    pub fn finish_rendering_method_info() -> &'static ::unity::il2cpp::MethodInfo {
525        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[8]
526    }
527
528    pub fn enqueue_deferred_method_info() -> &'static ::unity::il2cpp::MethodInfo {
529        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[9]
530    }
531
532    pub fn get_render_pass_inputs_method_info() -> &'static ::unity::il2cpp::MethodInfo {
533        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[10]
534    }
535
536    pub fn create_camera_render_target_method_info() -> &'static ::unity::il2cpp::MethodInfo {
537        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[11]
538    }
539
540    pub fn platform_requires_explicit_msaa_resolve_method_info() -> &'static ::unity::il2cpp::MethodInfo {
541        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[12]
542    }
543
544    pub fn requires_intermediate_color_texture_method_info() -> &'static ::unity::il2cpp::MethodInfo {
545        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[13]
546    }
547
548    pub fn can_copy_depth_method_info() -> &'static ::unity::il2cpp::MethodInfo {
549        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[14]
550    }
551}
552
553#[cfg(feature = "unity_engine-rendering-universal-forwardrenderer")]
554impl ForwardRenderer {
555    #[doc = "Direct (non-virtual) call to `ForwardRenderer`'s own `Dispose`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
556    pub unsafe fn dispose(this: impl ::core::convert::Into<::unity::IlInstance>, disposing: bool) -> () {
557        let __mi = Self::dispose_method_info();
558        let __inner: extern "C" fn(::unity::IlInstance, bool, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
559        __inner(this.into(), disposing, ::core::option::Option::None)
560    }
561
562    #[doc = "Direct (non-virtual) call to `ForwardRenderer`'s own `Setup`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
563    pub unsafe fn setup(
564        this: impl ::core::convert::Into<::unity::IlInstance>,
565        context: crate::unity_engine::rendering::scriptablerendercontext::ScriptableRenderContext,
566        rendering_data: *mut crate::unity_engine::rendering::universal::renderingdata::RenderingData,
567    ) -> () {
568        let __mi = Self::setup_method_info();
569        let __inner: extern "C" fn(
570            ::unity::IlInstance,
571            crate::unity_engine::rendering::scriptablerendercontext::ScriptableRenderContext,
572            *mut crate::unity_engine::rendering::universal::renderingdata::RenderingData,
573            ::unity::OptionalMethod,
574        ) -> () = ::core::mem::transmute(__mi.method_ptr);
575        __inner(this.into(), context, rendering_data, ::core::option::Option::None)
576    }
577
578    #[doc = "Direct (non-virtual) call to `ForwardRenderer`'s own `SetupLights`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
579    pub unsafe fn setup_lights(
580        this: impl ::core::convert::Into<::unity::IlInstance>,
581        context: crate::unity_engine::rendering::scriptablerendercontext::ScriptableRenderContext,
582        rendering_data: *mut crate::unity_engine::rendering::universal::renderingdata::RenderingData,
583    ) -> () {
584        let __mi = Self::setup_lights_method_info();
585        let __inner: extern "C" fn(
586            ::unity::IlInstance,
587            crate::unity_engine::rendering::scriptablerendercontext::ScriptableRenderContext,
588            *mut crate::unity_engine::rendering::universal::renderingdata::RenderingData,
589            ::unity::OptionalMethod,
590        ) -> () = ::core::mem::transmute(__mi.method_ptr);
591        __inner(this.into(), context, rendering_data, ::core::option::Option::None)
592    }
593
594    #[doc = "Direct (non-virtual) call to `ForwardRenderer`'s own `SetupCullingParameters`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
595    pub unsafe fn setup_culling_parameters(
596        this: impl ::core::convert::Into<::unity::IlInstance>,
597        culling_parameters: *mut crate::unity_engine::rendering::scriptablecullingparameters::ScriptableCullingParameters,
598        camera_data: *mut crate::unity_engine::rendering::universal::cameradata::CameraData,
599    ) -> () {
600        let __mi = Self::setup_culling_parameters_method_info();
601        let __inner: extern "C" fn(
602            ::unity::IlInstance,
603            *mut crate::unity_engine::rendering::scriptablecullingparameters::ScriptableCullingParameters,
604            *mut crate::unity_engine::rendering::universal::cameradata::CameraData,
605            ::unity::OptionalMethod,
606        ) -> () = ::core::mem::transmute(__mi.method_ptr);
607        __inner(this.into(), culling_parameters, camera_data, ::core::option::Option::None)
608    }
609
610    #[doc = "Direct (non-virtual) call to `ForwardRenderer`'s own `FinishRendering`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
611    pub unsafe fn finish_rendering(
612        this: impl ::core::convert::Into<::unity::IlInstance>,
613        cmd: crate::unity_engine::rendering::commandbuffer::CommandBuffer,
614    ) -> () {
615        let __mi = Self::finish_rendering_method_info();
616        let __inner: extern "C" fn(::unity::IlInstance, crate::unity_engine::rendering::commandbuffer::CommandBuffer, ::unity::OptionalMethod) -> () =
617            ::core::mem::transmute(__mi.method_ptr);
618        __inner(this.into(), cmd, ::core::option::Option::None)
619    }
620}
621
622#[cfg(feature = "unity_engine-rendering-universal-forwardrenderer")]
623impl ForwardRenderer {
624    #[doc = "`.ctor(crate::unity_engine::rendering::universal::forwardrendererdata::ForwardRendererData)` — overload selector"]
625    pub fn new(data: crate::unity_engine::rendering::universal::forwardrendererdata::ForwardRendererData) -> Self {
626        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
627            panic!(
628                "{}
629::{}
630 failed to instantiate",
631                ::core::stringify!(ForwardRenderer),
632                ::core::stringify!(new),
633            )
634        });
635        <Self as IForwardRendererMethods>::ctor(this, data);
636        this
637    }
638}
639
640#[cfg(feature = "unity_engine-rendering-universal-forwardrenderer")]
641impl ForwardRenderer_Profiling {
642    #[doc = "`.cctor()` overload"]
643    pub fn cctor() -> () {
644        unsafe {
645            ::unity::il2cpp_call!((::unity::module_base()+0x2cb6de0usize)as*mut u8,();
646            )
647        }
648    }
649}
650
651#[cfg(feature = "unity_engine-rendering-universal-forwardrenderer")]
652impl ForwardRenderer_Profiling {
653    pub fn cctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
654        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
655    }
656}
657
658#[cfg(feature = "unity_engine-rendering-universal-forwardrenderer")]
659#[doc(hidden)]
660pub mod prelude {
661    pub use super::{
662        ForwardRenderer, ForwardRenderer_Profiling, ForwardRenderer_RenderPassInputSummary, IForwardRenderer, IForwardRendererMethods,
663        IForwardRenderer_Profiling,
664    };
665    #[cfg(feature = "system-object")]
666    pub use crate::system::object::IObjectMethods;
667    #[cfg(feature = "system-valuetype")]
668    pub use crate::system::valuetype::IValueTypeMethods;
669    #[cfg(feature = "unity_engine-rendering-universal-scriptablerenderer")]
670    pub use crate::unity_engine::rendering::universal::scriptablerenderer::IScriptableRendererMethods;
671    pub use crate::{
672        system::{object::IObject, valuetype::IValueType},
673        unity_engine::rendering::universal::scriptablerenderer::IScriptableRenderer,
674    };
675}