Creator3D:shader11_水面波浪(一)

效果展示

正文

1.效果

在尝试之前,菜鸟提前去网上查了查,顺便看看别人是怎么做的,同时也发现了多种不同的实现思路以及非常好看的效果。

  • 常见的有: 波浪形水面和环形扩散形水面,

当然菜鸟也看见了一些非常牛逼的,水中倒影等更逼真的效果都实现了。这对菜鸟来说有点远了,咱就从最简单的波浪形水面和环形扩散形水面入手。本次主要是波浪形水面。

2.实现原理

看见波浪,第一反应就是正弦曲线,在之前也用过很多次了

根据上边的图我们知道,水波只需要利用在顶点着色器中对y轴坐标值的改变就可以实现

同时定义三个可控变量:

  • power:用于设置波浪起伏高度
  • frequency:波浪的频率,
  • speed :波浪滚动的速度

3.代码

properties: &props
  mainTexture:    { value: white }
  mainColor:      { value: [1, 1, 1, 1], editor: { type: color } }
  //声明变量
  power:          { value: 0.1 }
  frequency:      { value: 0.1}
  speed:          { value: 2}
}%  
//指定变量类型
CCProgram watter-props %{
  uniform Constants {
    float power;
    float frequency;
    float speed;
  };
}%  
//根据顶点坐标x值的变化以及其他参数求出对应y轴的正弦值
float y=sin(v_position.x*frequency+cc_time.x*speed)*power+phase;
v_position.y+=y;

4.地址

  • 微信公众号:搬砖小菜鸟

    扫码关注公众号,发送"gitee"可获取源码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

穿越的杨宗宝

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值