[][src]Struct gdnative::api::VisualShader

pub struct VisualShader { /* fields omitted */ }

core class VisualShader inherits Shader (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

VisualShader 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 VisualShader[src]

Constants

impl VisualShader[src]

pub fn new() -> Ref<VisualShader, 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 add_node(
    &self,
    _type: i64,
    node: impl AsArg<VisualShaderNode>,
    position: Vector2D<f32, UnknownUnit>,
    id: i64
)
[src]

Adds the specified node to the shader.

pub fn can_connect_nodes(
    &self,
    _type: i64,
    from_node: i64,
    from_port: i64,
    to_node: i64,
    to_port: i64
) -> bool
[src]

Returns [code]true[/code] if the specified nodes and ports can be connected together.

pub fn connect_nodes(
    &self,
    _type: i64,
    from_node: i64,
    from_port: i64,
    to_node: i64,
    to_port: i64
) -> Result<(), GodotError>
[src]

Connects the specified nodes and ports.

pub fn connect_nodes_forced(
    &self,
    _type: i64,
    from_node: i64,
    from_port: i64,
    to_node: i64,
    to_port: i64
)
[src]

Connects the specified nodes and ports, even if they can't be connected. Such connection is invalid and will not function properly.

pub fn disconnect_nodes(
    &self,
    _type: i64,
    from_node: i64,
    from_port: i64,
    to_node: i64,
    to_port: i64
)
[src]

Connects the specified nodes and ports.

pub fn graph_offset(&self) -> Vector2D<f32, UnknownUnit>[src]

The offset vector of the whole graph.

pub fn get_node(
    &self,
    _type: i64,
    id: i64
) -> Option<Ref<VisualShaderNode, Shared>>
[src]

Returns the shader node instance with specified [code]type[/code] and [code]id[/code].

pub fn get_node_connections(&self, _type: i64) -> VariantArray<Shared>[src]

Returns the list of connected nodes with the specified type.

pub fn get_node_list(&self, _type: i64) -> TypedArray<i32>[src]

Returns the list of all nodes in the shader with the specified type.

pub fn get_node_position(
    &self,
    _type: i64,
    id: i64
) -> Vector2D<f32, UnknownUnit>
[src]

Returns the position of the specified node within the shader graph.

pub fn get_valid_node_id(&self, _type: i64) -> i64[src]

pub fn is_node_connection(
    &self,
    _type: i64,
    from_node: i64,
    from_port: i64,
    to_node: i64,
    to_port: i64
) -> bool
[src]

Returns [code]true[/code] if the specified node and port connection exist.

pub fn remove_node(&self, _type: i64, id: i64)[src]

Removes the specified node from the shader.

pub fn set_graph_offset(&self, offset: Vector2D<f32, UnknownUnit>)[src]

The offset vector of the whole graph.

pub fn set_mode(&self, mode: i64)[src]

Sets the mode of this shader.

pub fn set_node_position(
    &self,
    _type: i64,
    id: i64,
    position: Vector2D<f32, UnknownUnit>
)
[src]

Sets the position of the specified node.

Methods from Deref<Target = Shader>

pub fn code(&self) -> GodotString[src]

Returns the shader's code as the user has written it, not the full generated code used internally.

pub fn custom_defines(&self) -> GodotString[src]

Returns the shader's custom defines. Custom defines can be used in Godot to add GLSL preprocessor directives (e.g: extensions) required for the shader logic.
			[b]Note:[/b] Custom defines are not validated by the Godot shader parser, so care should be taken when using them.

pub fn get_default_texture_param(
    &self,
    param: impl Into<GodotString>
) -> Option<Ref<Texture, Shared>>
[src]

Returns the texture that is set as default for the specified parameter.
				[b]Note:[/b] [code]param[/code] must match the name of the uniform in the code exactly.

pub fn get_mode(&self) -> Mode[src]

Returns the shader mode for the shader, either [constant MODE_CANVAS_ITEM], [constant MODE_SPATIAL] or [constant MODE_PARTICLES].

pub fn has_param(&self, name: impl Into<GodotString>) -> bool[src]

Returns [code]true[/code] if the shader has this param defined as a uniform in its code.
				[b]Note:[/b] [code]param[/code] must match the name of the uniform in the code exactly.

pub fn set_code(&self, code: impl Into<GodotString>)[src]

Returns the shader's code as the user has written it, not the full generated code used internally.

pub fn set_custom_defines(&self, custom_defines: impl Into<GodotString>)[src]

Returns the shader's custom defines. Custom defines can be used in Godot to add GLSL preprocessor directives (e.g: extensions) required for the shader logic.
			[b]Note:[/b] Custom defines are not validated by the Godot shader parser, so care should be taken when using them.

pub fn set_default_texture_param(
    &self,
    param: impl Into<GodotString>,
    texture: impl AsArg<Texture>
)
[src]

Sets the default texture to be used with a texture uniform. The default is used if a texture is not set in the [ShaderMaterial].
				[b]Note:[/b] [code]param[/code] must match the name of the uniform in the code exactly.

Trait Implementations

impl Debug for VisualShader[src]

impl Deref for VisualShader[src]

type Target = Shader

The resulting type after dereferencing.

impl DerefMut for VisualShader[src]

impl GodotObject for VisualShader[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

impl Instanciable for VisualShader[src]

impl SubClass<Object> for VisualShader[src]

impl SubClass<Reference> for VisualShader[src]

impl SubClass<Resource> for VisualShader[src]

impl SubClass<Shader> for VisualShader[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> SubClass<T> for T where
    T: GodotObject
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.