美文网首页
Unity3D基础论-Shader

Unity3D基础论-Shader

作者: 斗魁 | 来源:发表于2017-09-17 13:36 被阅读59次
shader

着色器(Shader)是用来实现图像渲染的,用来替代固定渲染管线的可编辑程序。其中Vertex Shader主要负责顶点的几何关系等的运算,Pixel Shader主要负责片源颜色等的计算。

着色器替代了传统的固定渲染管线,可以实现3D图形学计算中的相关计算,由于其可编辑性,可以实现各种各样的图像效果而不用受显卡的固定渲染管线限制。

固定管线着色器:

.缺点:不太灵活  优点:写起来比较简单

固定管线着色器

Properties:任何着色器都用这个属性来写、7种类型

SubShader :每一个子着色器相当于一个渲染方案,会判断使用那个渲染方案,一般写一个

Pass通道:只有顶点片段着色器、固定管线着色器有/表面着色器没有

作用示例:正面设置成一种样式反面设置成一种样式多方面渲染

浮点、颜色、2D贴图最常用 固定管线着色器 固定管线着色器

必须两个物体的脚本都有渲染队列代码,才能设置渲染队列

固定管线着色器 固定管线着色器

级别数值可以--Tags{"Queue"="Background+200"}这样写

固定管线着色器

透明混合:

固定管线着色器

纹理贴图:  SetTexture

固定管线着色器 固定管线着色器 固定管线着色器 固定管线着色器 固定管线着色器

用代码控制纹理的渐变:

Shader里有的属性在C#里大部分都能Get /Set到

固定管线着色器

AlphaTest:透明度测试(可以做溶解的效果)

固定管线着色器 固定管线着色器 固定管线着色器

表面着色器Surface Shader:

表面着色器模板;/表面着色器没有Pass通道

表面着色器

Fallback "Diffuse"每个着色器都得写

表面着色器 表面着色器 表面着色器

基本数据类型:

表面着色器 表面着色器 表面着色器 表面着色器 表面着色器 表面着色器 表面着色器 表面着色器 表面着色器 表面着色器 表面着色器 表面着色器

Normalized:

表面着色器

Dot:

dot pow 表面着色器 表面着色器 表面着色器 表面着色器 表面着色器

效果图:

效果

纹理图片旋转:

表面着色器

顶点片段着色器:

有pass通道

顶点片段着色器 顶点片段着色器 顶点片段着色器 顶点片段着色器 顶点片段着色器 顶点片段着色器 顶点片段着色器 顶点片段着色器 顶点片段着色器 顶点片段着色器 顶点片段着色器 顶点片段着色器 顶点片段着色器 顶点片段着色器 顶点片段着色器

END

相关文章

网友评论

      本文标题:Unity3D基础论-Shader

      本文链接:https://www.haomeiwen.com/subject/mikusxtx.html