您当前的位置: 首页 >  unity

天才小熊猫oo

暂无认证

  • 0浏览

    0关注

    37博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

unityShder的基本类型

天才小熊猫oo 发布时间:2018-12-26 19:13:23 ,浏览量:0

本人小白,刚刚开始学unityShader第一次写关于unity相关的shader,请大佬勿喷!!

 

Shader "test/my_shader" {                                                          //shdaer名称 "/" 代表路径     Properties{

        _Int("m_int",Int) = 111                        //int                           带引号的是变量类型,后面的是所有的类型         _Float("m_float",Float) = 112                //float         _Color("mainColor",Color) = (1,0,0,1)        //float4         _2D("m_tex2d",2D) = "red" {}                //sampler2D         _3D("m_tex3d",3D) = "red"{}                    //sampler3D         _Cube("m_cube",Cube) = "red"{}                //samplerCube     }         SubShader{             Pass {                                                  //每个程序段必须有个pass段             CGPROGRAM                                    //这里是语言的类型如果是GLSL 语言就写 GLSLPROGRAM    ...... ENDGLSL           int m_int;                                               //每个变量对应的变量类型             float m_float;             float4 m_color;             sampler2D m_tex2d;             sampler3D m_tex3d;             samplerCube m_texcube;             half m_hl; //应该类似16位float吧             任何使用float的都可以使用half类型和fixed类型类存储             half range 16位:-60000-+60000             fixed range 11位: -2 - +2  颜色一般用这个存储

            ENDCG         }     }     FallBack "Diffuse" }

在shader程序段的内部不能像c#语言一样直接访问外部的程序变量,要在shader语句块内在重新定义才可以使用。             

关注
打赏
1665545649
查看更多评论
立即登录/注册

微信扫码登录

0.0422s