ShaderMaterial

Inherits: Material < Resource < Reference < Object

A material that uses a custom Shader program.

Description

A material that uses a custom Shader program to render either items to screen or process particles. You can create multiple materials for the same shader but configure different values for the uniforms defined in the shader.

Note: Due to a renderer limitation, emissive ShaderMaterials cannot emit light when used in a GIProbe. Only emissive SpatialMaterials can emit light in a GIProbe.

Tutorials

Properties

Shader

shader

Methods

Variant

get_shader_param ( String param ) const

bool

property_can_revert ( String name )

Variant

property_get_revert ( String name )

void

set_shader_param ( String param, Variant value )


Property Descriptions

Shader shader

The Shader program used to render this material.


Method Descriptions

Variant get_shader_param ( String param ) const

Returns the current value set for this material of a uniform in the shader.


bool property_can_revert ( String name )

Returns true if the property identified by name can be reverted to a default value.


Variant property_get_revert ( String name )

Returns the default value of the material property with given name.


void set_shader_param ( String param, Variant value )

Changes the value set for this material of a uniform in the shader.

Note: param must match the name of the uniform in the code exactly.