《Unity Shader 入门精要》学习笔记03---Unity Shader基础

声明:只是自己看书的理解,可能有错的地方或者忽略一些要点,请斟酌取舍。

Shader就是渲染流水线中的某个特定阶段,如顶点着色器阶段,片元着色器阶段。
在Unity中,要使用Unity Shader需要先建一个材质,这个材质时Unity Shader的载体。

Unity 中的基本Shader模板有4种:
1.Standard Surface Shader(包含了标准光照模型的表面着色器模板)
2.Unlit Shader(不包含光照的 基本的 顶点/片元着色器 模板)
3.Image Effect Shader(屏幕后处理效果 模板)
4.Compute Shader(特殊的Shader,这里不讨论)
新建Shader时的选项
在Unity中,编写Unity Shader的语言是ShaderLab。
Unity Shader 的结构

Shader "ShaderName"{
		Properties{//属性}
		SubShader{//子着色器}
		...
		Fallback "name" //如果上述SubShader在此显卡上都不能执行,这执行这个。
}

以上只有最简单的结构,其中各部分可以编写的代码请自行查阅。
3种子着色器
1.表面着色器(代码少,消耗较大。本质上是顶点/片元着色器,只是unity把一些效果进行了封装。)
2.顶点/片元着色器(需要写更多的代码,但是灵活性很高,而且可以控制渲染实现的细节。)
3.固定函数着色器(最原始,不讨论。)
3种子着色器如何选择
1.除非有非常明确的要求必须使用固定函数着色器,否则使用其他两个。
2.如果你想和各种光源打交道,你可能更喜欢使用表面着色器,但需要小心移动平台的性能消耗。
3.如果你需要使用的光照数目非常少,那么使用顶点/片元着色器
4.最重要的是,如果你有很多自定义的渲染效果,那么请选择顶点/片元着色器

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值