Shader编程笔记(一)<新手入门> 固定管线Shader

初识 固定管线Shader

  • 介绍
    Fixed Function Shader也就是固定管线Shader,SurShader可以多个共存,来匹配不同的显卡,当全部都无法匹配时,使用FallBack。

固定管线Shader 主要涉及到以下5个部分:
1.Properties 属性

2.Material 材质

3.Lighting 灯光

4.Settexture 设置纹理
在完成渲染设定后,你能指定一定数量的纹理和当使用 SetTexture 命令时所采用的混合模式:
语法结构: SetTexture texture property { [Combine options] }

5.Pass 渲染管线
Pass通道块控制被渲染的对象的几何体
语法:Pass { [Name and Tags] [RenderSetup] [TextureSetup] }
基本通道命令包含一个可选的渲染设置命令的列表,和可选的被使用的纹理的列表。

Name and tags 名称和标签
一个通道能定义它的Name 和任意数量的Tags (用于向渲染引擎传递通道的意图的名称/值的字符串)。

Render Setup 渲染设置
通道设定显示硬件的各种状态,例如能打开alpha混合,能使用雾,等等。

这里写图片描述
详细用法看代码部分。
1. Shaderlab 基本结构

Shader"name"{
   [Properties]
   SurShader
   [FallBack]
}
  1. 代码部分
Shader"name"{
   Properties{
   _Color("Main Color",color)=(1,1,1,1)
   //"Main Color"是unity面板中显示的颜色
   _Ambient("Ambient",color)=(0.3,0.3,0.3,0.3)
   _Specular("Specular",color)=(1,1,1,1)
   _Shininess("Shininess",range(0,8))=4//参数float,也可以是range 表示范围
   _Emession("Emession",color)=(1,1,1,1)
   }
   SurShader{
       pass{
//        color(1,1,1,1)//使用小括号,表示固定值,在Inspector面板中不可见
//    color[_Color] //使用中括号,表示参数值,可在Inspector面板随时更改
      Material{
                diffuse[_Color]//漫反射,表示默认漫反射的颜色
        ambient[_Ambient]//环境光
        specular[_Specular]//镜面高光
        shininess[_Shininess]//表示高光反射的强度与区域
        emission[_Emission]//自发光
          }
      lighting on //打开光照 on表示打开
      separatespecular on//独立的镜面高光

      }
   }

}

如图所示
这里写图片描述
这里写图片描述
后面会持续更新,如有错误请帮忙指正,谢谢大家。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值