查看: 9565|回复: 0
打印 上一主题 下一主题

[其它] unity水流效果

[复制链接]

0

主题

7

听众

1550

积分

助理设计师

Rank: 4

纳金币
11
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

楼主
发表于 2018-12-18 15:17:50 |显示全部楼层
Shader "Custom/Stream" {
        Properties {
        _MainTex ("Albedo (RGB)", 2D) = "white" {}
        _MainTint ("Diffuse Tint", Color) = (1,1,1,1)
                _ScrollXSpeed ("X Scroll Speed", Range(0,10)) = 2
                _ScrollYSpeed ("Y Scroll Speed", Range(0,10)) = 2
        }
        SubShader {
                Tags { "RenderType"="Opaque" }
                LOD 200
               
                CGPROGRAM
                // Physically based Standard lighting model, and enable shadows on all light types
        #pragma surface surf Standard fullforwardshadows
                // Use shader model 3.0 target, to get nicer looking lighting
                #pragma target 3.0

        // 将类型转换到CG中的可用类型
                sampler2D _MainTex;
        fixed4 _MainTint;
        fixed _ScrollXSpeed;
        fixed _ScrollYSpeed;

        // 读取模型数据的结构体,名字有些迷惑人
                struct Input {
                        float2 uv_MainTex;
                };

        // inout类型是一个输出数据的类型,顶点着色器处理好数据之后传递给片段着色器
        // 就是通过inout修饰的参数来传递的,也就是说inout修饰的类型是提供给片段着色器进一步渲染的     
                void surf (Input IN, inout SurfaceOutputStandard o) {
        
            // 先将UV坐标保存起来(这个值的类型是float2或者fixed2都可以)
            float2 scrolledUV = IN.uv_MainTex;

            // 可以根据自己的需求来决定滚动方向,此处为xy两个方向偏移
            // _Time:是基于Unity的系统内置的时间变量
            fixed xScrollValue = _ScrollXSpeed * _Time;
            fixed yScrollValue = _ScrollYSpeed * _Time;

            // fixed2(x,y):这个就不用过多解释了,将xy合并成一个二元的数据类型
            scrolledUV += fixed2(xScrollValue,yScrollValue);

            // tex2D(sampler2D,fixed2)官方定义叫:二维纹理查询
            // 给出一张图和纹理坐标计算出颜色
                        half4 c = tex2D (_MainTex, scrolledUV)* _MainTint;
                        o.Albedo = c.rgb;
                        o.Alpha = c.a;
                }
                ENDCG
        }
        FallBack "Diffuse"
}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

关闭

站长推荐上一条 /1 下一条

手机版|纳金网 ( 闽ICP备08008928号

GMT+8, 2024-5-2 11:27 , Processed in 0.074619 second(s), 27 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部