Unity3D手游开发日记(6) - 适合移动平台的水深处理
来源:互联网 发布:淘宝电商培训课程 编辑:程序博客网 时间:2024/04/27 22:47
市面上大部分的手机游戏,水面都比较粗糙,也基本没发现谁做过水深的处理.
水深的处理在PC平台比较容易,因为很容易获得每个像素的深度,比如G-Buffer,有了像素的深度,就能计算出每个像素到水面的距离,实现水深alpha渐变.
但是在移动平台,又是万恶的浮点纹理...导致此方案不行.
但是方案都是人想出来的,我想了两种适合移动平台的方案
方案1:用水面顶点颜色保存alpha值来做水深渐变.
这种方案,要求水面的模型面片是格子的,就像地形网格一样,格子越密,alpha的精度才越高.
方案2:用贴图实现像素级的alpha深度.
这种方案,适合2个三角形面片的水面,对水面贴图有要求,一般的手游的场景比较小,512*512应该足够了.
我选择的是方案2. 因为我还要对水流方向做处理.
水流方向的处理和水深合并用一张flowmap来存储.
r ,g通道作为x, z方向,a作为alpha值.这样可实现像素级的流动方向和水深渐变.就可以做出漂亮的河流了.只有静态图:
0 0
- Unity3D手游开发日记(6) - 适合移动平台的水深处理
- Unity3D手游开发日记(4) - 适合移动平台的热浪扭曲
- Unity3D手游开发日记(5) - 适合移动平台的植被随风摆动
- Unity3D手游开发日记(7) - 适合移动平台的天气效果
- Unity3D手游开发日记(1) - 移动平台实时阴影方案
- Unity3D手游开发日记(1) - 移动平台实时阴影方案
- Unity3D手游开发日记(9) - 互动草的效果
- Unity3D手游开发日记(1)
- Unity3D手游开发日记(5)
- Unity3D手游开发日记(8)
- Unity3D手游开发日记(11)
- Unity3D手游开发日记(10)
- Unity3D手游开发日记(7)
- Unity3D手游开发日记(2) - 技能系统架构设计
- Unity3D手游开发日记(8) - 运动残影效果
- Unity3D手游开发日记(3) - 场景加载进度条的完美方案
- Unity3D手游开发日记(10) - 资源打包的一些思考
- Unity3D手游开发日记(11) - 基于共享骨骼简单高效的换装方案
- java的培训心得
- Java NIO 教程
- Jquery datatable 导出乱码 已解决
- linux下压缩文件管理器--file-roller
- Unicode Category
- Unity3D手游开发日记(6) - 适合移动平台的水深处理
- IM即时通讯实现的原理
- PHP资源大全
- java的进步都是在慢慢进行中的
- C++中STL迭代器的种类和简介
- SQL优化
- Java常用集合类及其区别
- join
- java语法的学习