Materiales Shader

Introducción

Para los casos más comunes, Godot proporciona materiales listos para usar para la mayoría de los tipos shaders, como SpatialMaterial, CanvasItemMaterial y ParticlesMaterial. Son implementaciones flexibles que cubren la mayoría de los casos de uso.

Los materiales shader permiten escribir un shader personalizado directamente, para una máxima flexibilidad. Ejemplos de esto son:

  • Crea texturas de procedimiento.

  • Crea efectos complejos de mezcla de texturas.

  • Crea materiales animados, o materiales que cambian con el tiempo.

  • Crea efectos refractivos u otros efectos avanzados.

  • Crea shaders de iluminación especiales para materiales más exóticos.

  • Animar los vértices, como las hojas de los árboles o la hierba.

  • Crear código personalizado para partículas.

  • ¡Y mucho más!

Godot proporciona una funcionalidad incorporada para facilitar las operaciones frecuentes. Además, el editor de shaders de Godot detectará errores mientras escribes, para que puedas ver tus shaders editados en tiempo real. También es posible editar los shaders usando un editor gráfico visual basado en nodos.

Creando un ShaderMaterial

Crear un nuevo ShaderMaterial en algún objeto de tu elección. Ve a la propiedad "Material" y crea un ShaderMaterial.

../../_images/shader_material_create.png

A continuación, haga clic en el material shader para ver sus propiedades. Desde aquí puedes crear un shader o un shader visual. Los shaders normales usan código para establecer sus propiedades mientras que un shader visual usa un flujo de trabajo basado en nodos.

Si lo necesitas, puedes convertir un shader visual en un shader de texto. Sin embargo, no puedes convertir un shader de texto en un shader visual.

Elige uno de ellos y podrás empezar a editar tu shader.

../../_images/shader_create.png

Si creas un shader normal, haz clic en él y se abrirá el editor de shaders.

../../_images/shader_material_editor.png

Si creas un shader visual, el editor de shader visuales se abrirá automáticamente.

../../_images/visual_shader_editor.png

En el editor de sombreadores visuales puedes hacer clic en un botón y ver cómo se ve tu shader visual como código shader. Esto puede ser útil si intentas replicar un shader de texto como nodos, o puede utilizarse como una vista previa para convertir tu shader visual en un shader de texto.

../../_images/visual_shader_code.png

Nota

Para aprender más sobre los shaders visuales, lea Using VisualShaders.

Convirtiendo a ShaderMaterial

Es posible convertir de SpatialMaterial, CanvasItemMaterial y ParticlesMaterial a ShaderMaterial. Para ello, vaya a las propiedades del material y seleccione la opción de conversión.

../../_images/shader_material_convert.png

Nota

Usar la opción de conversión convertirá el SpatialMaterial en un ShaderMaterial con un shader de texto, no un shader visual.