返回介绍

FlappyBird:4.3 无限地面之文艺青年(shader) 版

发布于 2025-04-26 18:34:23 字数 2451 浏览 0 评论 0 收藏

本章节效果图

原理

这种方法是通过 Shader 的 UV 动画实现的

步骤

1. 重新导入素材

Godot 默认的图片导入模式是非重复的,由于我们要移动 UV,因此要把"back.png"设为 Repeat 然后将它重新导入一下

2.写 Shader

新建一个叫“Shaders”的文件夹,专门存放着色器代码

创建 Shader 文件


命名为“2d_uv_scroll.shader”

“2d_uv_scroll.shader” 的代码

shader_type canvas_item;
render_mode unshaded;
uniform float speed : hint_range(0.00,1.00) = 0.0;
void vertex(){
	UV.x += speed*TIME;
}
3. 新建材质

为”Floor“新建材质,来覆盖默认材质

把"2d_uv_scroll.shader"赋给 Floor 的材质

把数值调整到合适大小

于是就得到了效果图的样子

小结

Shader 版是个人最推荐的版本

  1. 它实现了装饰性效果和游戏逻辑的解耦合
  2. 不需要复制多余的“Floor”节点
  3. “2d_uv_scroll.shader”可以重复利用,简单地调整一下数值就可以方便地多重滚动的效果

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。