[−][src]Struct gdnative::api::ShaderMaterial
core class ShaderMaterial
inherits Material
(reference counted).
Official documentation
See the documentation of this class in the Godot engine's official documentation.
Memory management
The lifetime of this object is automatically managed through reference counting.
Class hierarchy
ShaderMaterial inherits methods from:
Safety
All types in the Godot API have "interior mutability" in Rust parlance.
To enforce that the official thread-safety guidelines are
followed, the typestate pattern is used in the Ref
and TRef
smart pointers,
and the Instance
API. The typestate Access
in these types tracks whether the
access is unique, shared, or exclusive to the current thread. For more information,
see the type-level documentation on Ref
.
Implementations
impl ShaderMaterial
[src]
pub fn new() -> Ref<ShaderMaterial, Unique>
[src]
Creates a new instance of this object.
This is a reference-counted type. The returned object is automatically managed
by Ref
.
pub fn shader(&self) -> Option<Ref<Shader, Shared>>
[src]
The [Shader] program used to render this material.
pub fn get_shader_param(&self, param: impl Into<GodotString>) -> Variant
[src]
Returns the current value set for this material of a uniform in the shader.
pub fn property_can_revert(&self, name: impl Into<GodotString>) -> bool
[src]
Returns [code]true[/code] if the property identified by [code]name[/code] can be reverted to a default value.
pub fn property_get_revert(&self, name: impl Into<GodotString>) -> Variant
[src]
Returns the default value of the material property with given [code]name[/code].
pub fn set_shader(&self, shader: impl AsArg<Shader>)
[src]
The [Shader] program used to render this material.
pub fn set_shader_param(
&self,
param: impl Into<GodotString>,
value: impl OwnedToVariant
)
[src]
&self,
param: impl Into<GodotString>,
value: impl OwnedToVariant
)
Changes the value set for this material of a uniform in the shader. [b]Note:[/b] [code]param[/code] must match the name of the uniform in the code exactly.
Methods from Deref<Target = Material>
pub const RENDER_PRIORITY_MAX: i64
[src]
pub const RENDER_PRIORITY_MIN: i64
[src]
pub fn next_pass(&self) -> Option<Ref<Material, Shared>>
[src]
Sets the [Material] to be used for the next pass. This renders the object again using a different material.
[b]Note:[/b] only applies to [SpatialMaterial]s and [ShaderMaterial]s with type "Spatial".
pub fn render_priority(&self) -> i64
[src]
Sets the render priority for transparent objects in 3D scenes. Higher priority objects will be sorted in front of lower priority objects.
[b]Note:[/b] this only applies to sorting of transparent objects. This will not impact how transparent objects are sorted relative to opaque objects. This is because opaque objects are not sorted, while transparent objects are sorted from back to front (subject to priority).
pub fn set_next_pass(&self, next_pass: impl AsArg<Material>)
[src]
Sets the [Material] to be used for the next pass. This renders the object again using a different material.
[b]Note:[/b] only applies to [SpatialMaterial]s and [ShaderMaterial]s with type "Spatial".
pub fn set_render_priority(&self, priority: i64)
[src]
Sets the render priority for transparent objects in 3D scenes. Higher priority objects will be sorted in front of lower priority objects.
[b]Note:[/b] this only applies to sorting of transparent objects. This will not impact how transparent objects are sorted relative to opaque objects. This is because opaque objects are not sorted, while transparent objects are sorted from back to front (subject to priority).
Trait Implementations
impl Debug for ShaderMaterial
[src]
impl Deref for ShaderMaterial
[src]
impl DerefMut for ShaderMaterial
[src]
impl GodotObject for ShaderMaterial
[src]
type RefKind = RefCounted
The memory management kind of this type. This modifies the behavior of the
Ref
smart pointer. See its type-level documentation for more
information. Read more
fn class_name() -> &'static str
[src]
fn null() -> Null<Self>
[src]
fn new() -> Ref<Self, Unique> where
Self: Instanciable,
[src]
Self: Instanciable,
fn cast<T>(&self) -> Option<&T> where
T: GodotObject + SubClass<Self>,
[src]
T: GodotObject + SubClass<Self>,
fn upcast<T>(&self) -> &T where
Self: SubClass<T>,
T: GodotObject,
[src]
Self: SubClass<T>,
T: GodotObject,
unsafe fn assume_shared(&self) -> Ref<Self, Shared>
[src]
unsafe fn assume_thread_local(&self) -> Ref<Self, ThreadLocal> where
Self: GodotObject<RefKind = RefCounted>,
[src]
Self: GodotObject<RefKind = RefCounted>,
unsafe fn assume_unique(&self) -> Ref<Self, Unique>
[src]
impl Instanciable for ShaderMaterial
[src]
fn construct() -> Ref<ShaderMaterial, Unique>
[src]
impl SubClass<Material> for ShaderMaterial
[src]
impl SubClass<Object> for ShaderMaterial
[src]
impl SubClass<Reference> for ShaderMaterial
[src]
impl SubClass<Resource> for ShaderMaterial
[src]
Auto Trait Implementations
impl RefUnwindSafe for ShaderMaterial
impl !Send for ShaderMaterial
impl !Sync for ShaderMaterial
impl Unpin for ShaderMaterial
impl UnwindSafe for ShaderMaterial
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> SubClass<T> for T where
T: GodotObject,
[src]
T: GodotObject,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,