本课程将学习使用 ACTION GAME MAKER 进行各种表现的方法。
第三讲将介绍着色器的使用方法。
课程开始前的准备工作
继续使用第二讲中使用的项目。
请打开项目并做好准备工作。
shader_type canvas_item;
uniform float blur_radius : hint_range(0.0, 10.0); // 模糊强度
void fragment() {
vec2 size = vec2(textureSize(TEXTURE, 0));
vec2 uv = UV;
vec4 sum = vec4(0.0);
int blur_size = int(blur_radius);
for (int x = -blur_size; x <= blur_size; x++) {
for (int y = -blur_size; y <= blur_size; y++) {
vec2 offset = vec2(float(x), float(y)) / size;
sum += texture(TEXTURE, uv + offset);
}
}
float samples = pow(float(blur_size * 2 + 1), 2.0);
COLOR = sum / samples;
}
Godot 的着色器是使用名为 GDSL 的专用语言编写的,因此必须编写脚本。
不过,许多前辈已经创建了大量的着色器。如果您搜索以下网站或网络资源,可能会找到您想要制作的着色器。
此着色器参数也可以用作动画的关键帧。因此,可以非常轻松地实现使用着色器的动画,适用于传送、战斗入场演出等各种场景。
表现强化课程到此结束。
其他课程请在此处报名
1. 图形课程
面向希望操控自己绘制角色的用户。
2. 脚本课程
面向希望使用默认角色制作各种动作或系统的用户。