unity中的简单水效果实现
来源:互联网 发布:黄金比例算法 编辑:程序博客网 时间:2024/04/30 09:01
最近有关于水的表现要求。UNITY自带的水效果在资源上存在消耗比较高的情况。根据项目的具体要求需要制作一种简单的水效果。
完成后和美术同志碰了一下感觉效果比较满意 ,要比简单的UV动画效果 好不少。抽时间发源码和大家分享一下。希望大家多多指正。
代码如下:
struct Input {
float2 uv_MainTex;
float2 uv_NoiseTex;
};
void vert(inout appdata_full v,Input o)
{
UNITY_INITIALIZE_OUTPUT(Input o);
o.vertcolor=v.color;
}
void surf(Input IN, inout SurfaceOutput o) {
float2 speed=float2(xscroll,yscroll)*_Time.x+IN.uv_NoiseTex;
fixed4 noise1 = tex2D(_NoiseTex,speed);
fixed4 noise2 = tex2D(_NoiseTex,speed);
half4 c=tex2D(_MainTex,float2(noise1,x+noise2,y,noise1.y+noise2.x));
o.Albedo = c.rgb * N.vertex.color.rgb + _MainColor.rgb;
o.Alpha = d.a*IN.vertex.color.a*_MainColor.a;
}
其中核心的部分就是使用noisetex贴图对maintex进行UV采样从而实现模拟的流水折射扭曲效果;
注:
UNITY_INITIALIZE_OUTPUT(type,name)这个函数的作用就是吧name类型 转成type类型;
- unity中的简单水效果实现
- Unity拖拽NGUI中的Texture效果实现
- AR 中的阴影与浮现效果 (Unity实现)
- unity实现玻璃效果
- unity 实现流光效果
- Unity中的淡入淡出效果
- unity实现判断手指是否顺时针滑动实现简单的方向盘效果
- unity实现动态广告牌效果
- Unity实现瞄准镜效果
- Unity--实现屏幕多屏分屏效果
- Unity实现残影效果
- Unity 屏幕震动效果实现
- Unity 粒子海洋效果实现
- Unity 粒子海洋效果实现
- unity实现描边效果
- Unity SpriteRender 实现Fill效果
- unity 实现pageView翻页效果
- unity实现dialog效果教程
- android minSdkVersion maxSdkVersion targetSdkVersion build target
- EasyRecovery(超级数据恢复软件) v11.1 汉化中文企业版
- Storm常见模式------TimeCacheMap
- 为data盘添加磁盘(asm external)
- 欢迎使用CSDN-markdown编辑器
- unity中的简单水效果实现
- iOS开发常用的第三方资源
- 线索二叉树
- # @Resource @Autowired @Qualifier注解
- informatica 调优经典稿件
- Android APP 数据存放目录
- 用Python和OpenCV创建一个图片搜索引擎的完整指南 The complete guide to building an image search engine with Python and
- 分布式文件存储FastDFS(四)配置fastdfs-apache-module
- 官方的自定义 View 例子