zoukankan      html  css  js  c++  java
  • Shader基础(一)

    shader中常用的数据类型:

    3种基本数值类型:float、half和fixed。 
    这3种基本数值类型可以再组成vector和matrix,比如half3是由3个half组成、float4x4是由16个float组成。
    
    float:32位高精度浮点数。 
    half:16位中精度浮点数。范围是[-6万, +6万],能精确到十进制的小数点后3.3位。 
    fixed:11位低精度浮点数。范围是[-2, 2],精度是1/256。 
    Sampler2D:2D纹理属性
    

    Tags :tags标签是三种类型的shader都具有的标签,它决定了硬件什么调用该子着色器

    Tags标签里面默认的“RenderType”=”Opaque”,是告诉系统应该在渲染非透明物体时调用这个SubShader
    “RenderType”=”Transparent”表示在渲染含有透明效果的物体时调用该Sunshader,
     
    Tags里面还有许多其他的我们可选的标签
    ①.”Queue”:定义渲染顺序。预制的值有这些 
        ”Background”。值为1000。比如用于天空盒。
        ”Geometry”。值为2000。大部分物体在这个队列。不透明的物体也在这里。
        ”AlphaTest”。值为2450。已进行AlphaTest的物体在这个队列。 
        ”Transparent”。值为3000。透明物体。 
        ”Overlay”。值为4000。比如镜头光晕。 
        用户可以定义任意值,比如”Queue”=”Geometry+10”
    ②“RenderType”:定义渲染类型。预制的值有这些
        ”Opaque”:绝大部分不透明的物体都使用这个; 
        ”Transparent”:绝大部分透明的物体、包括粒子特效都使用这个; 
        ”Background”:天空盒都使用这个; 
        ”Overlay”:GUI、镜头光晕都使用这个; 
    ③”ForceNoShadowCasting”:定义物体是否有阴影效果
        “true”。表示有阴影
        “false”。表示没有阴影
    

      

  • 相关阅读:
    C语言输出颜色
    嵌入式Linux串口编程简介
    推荐:实现RTSP/RTMP/HLS/HTTP协议的轻量级流媒体框架,支持大并发连接请求
    嵌入式串口打印信息重定向到当前终端界面
    C、C++、boost、Qt在嵌入式系统开发中的使用
    LInux下Posix的传统线程示例
    Linux用C语言模拟‘ls‘命令
    关于Linux目录访问函数总结
    Inter内部指令--AVX编程基础
    SPECCPU2006测试(456测试小记)
  • 原文地址:https://www.cnblogs.com/chenggg/p/12609794.html
Copyright © 2011-2022 走看看