Godot Shader笔记: 你的第一个2D Shader(一)

原文地址:Docs » Shading » Your first shader » Your first CanvasItem shader

导论

Shader是一种执行在GPU上用于渲染图形的特殊程序。所有现代渲染都依赖于Shader.想要了解更多关于Shader的细节请阅读 《啥是Shader》 。

本教程将从实践的角度手把手教你写一个包含vertex函数和fragment函数的Shader。本教程完全面向初学者。

注意:如果你右边写Shader的经验或者仅仅是想Godot Shader的工作概要,请阅读《Shader手册》

准备工作

2D Shader(CanvasItem Shader)被用于绘制Godot中的所有2D对象,3D Shader(Spatial Shader)被用于绘制所有3D对象。

想要使用Shader,必须首先将一个材质(Material)挂载到对象上,然后再把Shader挂载到材质上。材质是一种资源(Resource)类型。如果想使用同一材质绘制多个对象,那么每个对象上都要挂载这个材质。

所有派生自CanvasItem的对象都拥有一个材质属性,包括所有的GUI 节点,Sprite节点,TileMap节点,MeshInstance2D节点等等。这些节点还有一个选项可以直接继承其父节点的材质。

首先,创建一个Sprite节点。实际上你可以创建任何的CanvasItem节点,但在这个教程里我们使用一个Sprite节点。

在检视面板中,点击Texture(此时它应该显示为空[empty]),选择load,然后选择Icon.png,对于新项目这个图片应当是Godot的icon。这时你应该可以在视口中看到这个icon。

接下来,看一下检视面板,在CanvasItem区域的下面,点击"Material"然后选择“New ShaderMaterial”,来创建一个新的材质资源。点击此时显示的球状区域,此时Godot并不知道你要写一个2D Shader还是3D Shader,所以它默认显示一个3D Shader。

点击“Shader”并且选择“New Shader”。最后,点击新的Shader资源,这时候Shader编辑器将会打开。此时,你已经准备好写你的第一个Shader啦。

你可能感兴趣的:(Godot Shader笔记: 你的第一个2D Shader(一))