您当前的位置: 首页 >  动画

开发游戏的老王

暂无认证

  • 3浏览

    0关注

    803博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Godot Shader特效:UV旋转动画

开发游戏的老王 发布时间:2019-09-01 10:04:37 ,浏览量:3

实现这个效果,用GDScript的话只要一行代码就可以解决;用Shader做的话需要一些线性代数知识,扩展性相对差一些,不过如果像逻辑和表现解耦合或者减少CPU运算的话可以考虑这个实现方式

效果图

UV旋转动画

代码如下
shader_type canvas_item;
render_mode unshaded;
uniform float pivot_x : hint_range(0.01,0.99) = 0.5;
uniform float pivot_y : hint_range(0.01,0.99) = 0.5;
uniform float angular_speed  = 1.0;
void vertex(){
	vec2 pivot = vec2(pivot_x, pivot_y);
    float rot = TIME * angular_speed; 
    UV -= pivot;
    UV *= mat2(vec2(sin(rot), -cos(rot)),
               vec2(cos(rot), sin(rot)));
    UV += pivot;
}
关注
打赏
1656935939
查看更多评论
立即登录/注册

微信扫码登录

0.0404s