您当前的位置: 首页 > 

果冻喜之郎

暂无认证

  • 3浏览

    0关注

    79博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

shader编程1

果冻喜之郎 发布时间:2021-08-11 13:43:58 ,浏览量:3

基础结构:

Shader "路径名/shader名"
{
    Properties //属性,相当于类中的字段或变量,声明变量当做shader的参数,不加分号
    {...
        _Color ("Color", Color) = (1,1,1,1)
        _MainTex ("Albedo (RGB)", 2D) = "white" {}
        _Glossiness ("Smoothness", Range(0,1)) = 0.5
        _Metallic ("Metallic", Range(0,1)) = 0.0

        //_MainTex ("显示名称", 类型) = 默认值
    }

    SubShader  //子着色器,一个shader可以包含多个subshader
    {...
         Pass    //渲染通道,可以添加多个渲染通道,每渲染一次产生一个drawcall
         {...}
    }
}

显示类型: 

  1. Color - 一种颜色,由RGBA(红绿蓝和透明度)四个量来定义;

  2. 2D - 一张2的阶数大小(256,512之类)的贴图。这张贴图将在采样后被转为对应基于模型UV的每个像素的颜色,最终被显示出来;

  3. Rect - 一个非2阶数大小的贴图;

  4. Cube - 即Cube map texture(立方体纹理),简单说就是6张有联系的2D贴图的组合,主要用来做反射效果(比如天空盒和动态反射),也会被转换为对应点的采样;

  5. Range(min, max) - 一个介于最小值和最大值之间的浮点数,一般用来当作调整Shader某些特性的参数(比如透明度渲染的截止值可以是从0至1的值等);

  6. Float - 任意一个浮点数;

  7. Vector - 一个四维数;

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

微信扫码登录

0.0885s