Skip to main content

engage/generated/app/water/
waterv2.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "app-water-waterv2-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::{
9        system::{
10            object::{IObject, Object},
11            r#enum::{Enum, IEnum},
12            valuetype::{IValueType, ValueType},
13        },
14        unity_engine::{
15            behaviour::{Behaviour, IBehaviour},
16            component::{Component, IComponent},
17            monobehaviour::{IMonoBehaviour, MonoBehaviour},
18            object_2::{IObject_2, Object_2},
19        },
20    };
21
22    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/app/water/waterv2/WaterV2.md"))]
23    #[::unity::class(namespace = "App.Water", name = "WaterV2")]
24    #[parent(crate::unity_engine::monobehaviour::MonoBehaviour)]
25    pub struct WaterV2 {
26        #[offset(24)]
27        #[rename(name = "waterMode")]
28        pub water_mode: crate::app::water::waterv2::WaterV2_WaterMode,
29        #[offset(28)]
30        #[rename(name = "disablePixelLights")]
31        pub disable_pixel_lights: bool,
32        #[offset(32)]
33        #[rename(name = "textureSize")]
34        pub texture_size: i32,
35        #[offset(36)]
36        #[rename(name = "clipPlaneOffset")]
37        pub clip_plane_offset: f32,
38        #[offset(40)]
39        #[rename(name = "reflectLayers")]
40        pub reflect_layers: crate::unity_engine::layermask::LayerMask,
41        #[offset(44)]
42        #[rename(name = "refractLayers")]
43        pub refract_layers: crate::unity_engine::layermask::LayerMask,
44        #[offset(48)]
45        #[rename(name = "m_ReflectionCameras")]
46        pub m_reflection_cameras:
47            crate::system::collections::generic::dictionary_2::Dictionary_2<crate::unity_engine::camera::Camera, crate::unity_engine::camera::Camera>,
48        #[offset(56)]
49        #[rename(name = "m_RefractionCameras")]
50        pub m_refraction_cameras:
51            crate::system::collections::generic::dictionary_2::Dictionary_2<crate::unity_engine::camera::Camera, crate::unity_engine::camera::Camera>,
52        #[offset(64)]
53        #[rename(name = "m_ReflectionTexture")]
54        pub m_reflection_texture: crate::unity_engine::rendertexture::RenderTexture,
55        #[offset(72)]
56        #[rename(name = "m_RefractionTexture")]
57        pub m_refraction_texture: crate::unity_engine::rendertexture::RenderTexture,
58        #[offset(80)]
59        #[rename(name = "m_HardwareWaterSupport")]
60        pub m_hardware_water_support: crate::app::water::waterv2::WaterV2_WaterMode,
61        #[offset(84)]
62        #[rename(name = "m_OldReflectionTextureSize")]
63        pub m_old_reflection_texture_size: i32,
64        #[offset(88)]
65        #[rename(name = "m_OldRefractionTextureSize")]
66        pub m_old_refraction_texture_size: i32,
67        #[static_field]
68        #[rename(name = "s_InsideWater")]
69        pub s_inside_water: bool,
70    }
71
72    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/app/water/waterv2/WaterV2_WaterMode.md"))]
73    #[repr(C)]
74    #[derive(::core::clone::Clone, ::core::marker::Copy, ::core::fmt::Debug, ::core::cmp::PartialEq, ::core::cmp::Eq)]
75    pub struct WaterV2_WaterMode {
76        pub value: i32,
77    }
78    impl ::unity::ClassIdentity for WaterV2_WaterMode {
79        const NAME: &'static str = "WaterV2.WaterMode";
80        const NAMESPACE: &'static str = "App.Water";
81
82        fn class() -> ::unity::Class {
83            static CACHE: ::std::sync::OnceLock<::unity::Class> = ::std::sync::OnceLock::new();
84            *CACHE.get_or_init(|| ::unity::Class::lookup(Self::NAMESPACE, Self::NAME))
85        }
86    }
87    impl ::unity::IlType for WaterV2_WaterMode {
88        fn il_type() -> &'static ::unity::il2cpp::Il2CppType {
89            &<Self as ::unity::ClassIdentity>::class().raw()._1.byval_arg
90        }
91    }
92    impl WaterV2_WaterMode {
93        pub fn simple() -> Self {
94            Self { value: 0 }
95        }
96
97        pub fn reflective() -> Self {
98            Self { value: 1 }
99        }
100
101        pub fn refractive() -> Self {
102            Self { value: 2 }
103        }
104    }
105}
106
107#[cfg(feature = "app-water-waterv2-types")]
108pub use __types::*;
109
110#[cfg(feature = "app-water-waterv2")]
111impl WaterV2 {
112    #[doc = "`CalculateReflectionMatrix(*mutcrate::unity_engine::matrix4x4::Matrix4x4, crate::unity_engine::vector4::Vector4)` overload"]
113    pub fn calculate_reflection_matrix(
114        plane: impl ::core::convert::Into<crate::unity_engine::vector4::Vector4>,
115    ) -> crate::unity_engine::matrix4x4::Matrix4x4 {
116        unsafe {
117            let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::matrix4x4::Matrix4x4>::uninit();
118            ::unity::il2cpp_call!((::unity::module_base()+0x21c67f0usize)as*mut u8,();
119(*mut crate::unity_engine::matrix4x4::Matrix4x4)__out_0.as_mut_ptr(),(crate::unity_engine::vector4::Vector4)::core::convert::Into::into(plane));
120            __out_0.assume_init()
121        }
122    }
123}
124
125#[cfg(feature = "app-water-waterv2")]
126pub trait IWaterV2Methods: IWaterV2 {
127    #[doc = "`OnWillRenderObject()` overload"]
128    fn on_will_render_object(self) -> () {
129        unsafe {
130            let __receiver = <WaterV2 as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
131            ::unity::il2cpp_call!((::unity::module_base()+0x21c5090usize)as*mut u8,();
132(WaterV2)__receiver)
133        }
134    }
135    #[doc = "`OnDisable()` overload"]
136    fn on_disable(self) -> () {
137        unsafe {
138            let __receiver = <WaterV2 as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
139            ::unity::il2cpp_call!((::unity::module_base()+0x21c6bd0usize)as*mut u8,();
140(WaterV2)__receiver)
141        }
142    }
143    #[doc = "`Update()` overload"]
144    fn update(self) -> () {
145        unsafe {
146            let __receiver = <WaterV2 as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
147            ::unity::il2cpp_call!((::unity::module_base()+0x21c6f50usize)as*mut u8,();
148(WaterV2)__receiver)
149        }
150    }
151    #[doc = "`UpdateCameraModes(crate::unity_engine::camera::Camera, crate::unity_engine::camera::Camera)` overload"]
152    fn update_camera_modes(
153        self,
154        src: impl ::core::convert::Into<crate::unity_engine::camera::Camera>,
155        dest: impl ::core::convert::Into<crate::unity_engine::camera::Camera>,
156    ) -> () {
157        unsafe {
158            let __receiver = <WaterV2 as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
159            ::unity::il2cpp_call!((::unity::module_base()+0x21c6590usize)as*mut u8,();
160(WaterV2)__receiver,(crate::unity_engine::camera::Camera)::core::convert::Into::into(src),(crate::unity_engine::camera::Camera)::core::convert::Into::into(dest))
161        }
162    }
163    #[doc = "`CreateWaterObjects(crate::unity_engine::camera::Camera, *mutcrate::unity_engine::camera::Camera, *mutcrate::unity_engine::camera::Camera)` overload"]
164    fn create_water_objects(
165        self,
166        current_camera: impl ::core::convert::Into<crate::unity_engine::camera::Camera>,
167    ) -> (crate::unity_engine::camera::Camera, crate::unity_engine::camera::Camera) {
168        unsafe {
169            let __receiver = <WaterV2 as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
170            let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::camera::Camera>::uninit();
171            let mut __out_1 = ::core::mem::MaybeUninit::<crate::unity_engine::camera::Camera>::uninit();
172            ::unity::il2cpp_call!((::unity::module_base()+0x21c5c50usize)as*mut u8,();
173(WaterV2)__receiver,(crate::unity_engine::camera::Camera)::core::convert::Into::into(current_camera),(*mut crate::unity_engine::camera::Camera)__out_0.as_mut_ptr(),(*mut crate::unity_engine::camera::Camera)__out_1.as_mut_ptr());
174            (__out_0.assume_init(), __out_1.assume_init())
175        }
176    }
177    #[doc = "`GetWaterMode()` overload"]
178    fn get_water_mode(self) -> crate::app::water::waterv2::WaterV2_WaterMode {
179        unsafe {
180            let __receiver = <WaterV2 as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
181            ::unity::il2cpp_call!((::unity::module_base()+0x21c5c30usize)as*mut u8,crate::app::water::waterv2::WaterV2_WaterMode;
182(WaterV2)__receiver)
183        }
184    }
185    #[doc = "`FindHardwareWaterSupport()` overload"]
186    fn find_hardware_water_support(self) -> crate::app::water::waterv2::WaterV2_WaterMode {
187        unsafe {
188            let __receiver = <WaterV2 as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
189            ::unity::il2cpp_call!((::unity::module_base()+0x21c5a90usize)as*mut u8,crate::app::water::waterv2::WaterV2_WaterMode;
190(WaterV2)__receiver)
191        }
192    }
193    #[doc = "`CameraSpacePlane(crate::unity_engine::camera::Camera, crate::unity_engine::vector3::Vector3, crate::unity_engine::vector3::Vector3, f32)` overload"]
194    fn camera_space_plane(
195        self,
196        cam: impl ::core::convert::Into<crate::unity_engine::camera::Camera>,
197        pos: impl ::core::convert::Into<crate::unity_engine::vector3::Vector3>,
198        normal: impl ::core::convert::Into<crate::unity_engine::vector3::Vector3>,
199        side_sign: impl ::core::convert::Into<f32>,
200    ) -> crate::unity_engine::vector4::Vector4 {
201        unsafe {
202            let __receiver = <WaterV2 as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
203            ::unity::il2cpp_call!((::unity::module_base()+0x21c6aa0usize)as*mut u8,crate::unity_engine::vector4::Vector4;
204(WaterV2)__receiver,(crate::unity_engine::camera::Camera)::core::convert::Into::into(cam),(crate::unity_engine::vector3::Vector3)::core::convert::Into::into(pos),(crate::unity_engine::vector3::Vector3)::core::convert::Into::into(normal),(f32)::core::convert::Into::into(side_sign))
205        }
206    }
207    #[doc = "`.ctor()` overload"]
208    fn ctor(self) -> () {
209        unsafe {
210            let __receiver = <WaterV2 as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
211            ::unity::il2cpp_call!((::unity::module_base()+0x21c7230usize)as*mut u8,();
212(WaterV2)__receiver)
213        }
214    }
215}
216
217#[cfg(feature = "app-water-waterv2")]
218impl<__T: IWaterV2> IWaterV2Methods for __T {}
219
220#[cfg(feature = "app-water-waterv2")]
221impl WaterV2 {
222    pub fn on_will_render_object_method_info() -> &'static ::unity::il2cpp::MethodInfo {
223        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
224    }
225
226    pub fn on_disable_method_info() -> &'static ::unity::il2cpp::MethodInfo {
227        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
228    }
229
230    pub fn update_method_info() -> &'static ::unity::il2cpp::MethodInfo {
231        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
232    }
233
234    pub fn update_camera_modes_method_info() -> &'static ::unity::il2cpp::MethodInfo {
235        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
236    }
237
238    pub fn create_water_objects_method_info() -> &'static ::unity::il2cpp::MethodInfo {
239        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
240    }
241
242    pub fn get_water_mode_method_info() -> &'static ::unity::il2cpp::MethodInfo {
243        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
244    }
245
246    pub fn find_hardware_water_support_method_info() -> &'static ::unity::il2cpp::MethodInfo {
247        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
248    }
249
250    pub fn camera_space_plane_method_info() -> &'static ::unity::il2cpp::MethodInfo {
251        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[7]
252    }
253
254    pub fn calculate_reflection_matrix_method_info() -> &'static ::unity::il2cpp::MethodInfo {
255        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[8]
256    }
257
258    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
259        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[9]
260    }
261}
262
263#[cfg(feature = "app-water-waterv2")]
264impl WaterV2 {
265    #[doc = "`.ctor()` — no args"]
266    pub fn new() -> Self {
267        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
268            panic!(
269                "{}
270::{}
271 failed to instantiate",
272                ::core::stringify!(WaterV2),
273                ::core::stringify!(new),
274            )
275        });
276        <Self as IWaterV2Methods>::ctor(this);
277        this
278    }
279}
280
281#[cfg(feature = "app-water-waterv2")]
282#[doc(hidden)]
283pub mod prelude {
284    pub use super::{IWaterV2, IWaterV2Methods, WaterV2, WaterV2_WaterMode};
285    #[cfg(feature = "system-object")]
286    pub use crate::system::object::IObjectMethods;
287    #[cfg(feature = "system-enum")]
288    pub use crate::system::r#enum::IEnumMethods;
289    #[cfg(feature = "system-valuetype")]
290    pub use crate::system::valuetype::IValueTypeMethods;
291    #[cfg(feature = "unity_engine-behaviour")]
292    pub use crate::unity_engine::behaviour::IBehaviourMethods;
293    #[cfg(feature = "unity_engine-component")]
294    pub use crate::unity_engine::component::IComponentMethods;
295    #[cfg(feature = "unity_engine-monobehaviour")]
296    pub use crate::unity_engine::monobehaviour::IMonoBehaviourMethods;
297    #[cfg(feature = "unity_engine-object_2")]
298    pub use crate::unity_engine::object_2::IObject_2Methods;
299    pub use crate::{
300        system::{object::IObject, r#enum::IEnum, valuetype::IValueType},
301        unity_engine::{behaviour::IBehaviour, component::IComponent, monobehaviour::IMonoBehaviour, object_2::IObject_2},
302    };
303}