Unity 3D 图形学Shader之顶点着色器(四)
2019-03-11 18:17
274 查看
由这一章节可知Gpu的渲染流程如下所示
Gpu: 渲染管线(管道):顶点着色器——>光栅化——>片段着色器——>alpha测试——>模版测试——>深度测试——>Blend——>Gbuffer——>BrontBuffer——>framebuffer——>显示器
整个流程里面我们能够改变的:顶点着色器,片段着色器以及三大测试。
首先对顶点着色器进行代码编辑:新建TestVertex Shader脚本并打开进行编辑
把Shader脚本相关内容去掉,只剩下简单结构如下:
[code]Shader "Hidden/TestVertex" { Properties { _MainTex ("Texture", 2D) = "white" {} } SubShader { Pass { } } }
顶点着色器:
1.计算顶点的颜色 2. 灯光的作用
计算顶点的颜色两种方式:直接调节,通过变量调节
接下来:灯光来了以后,材质球如何与灯光作用:
下面代码针对光的计算公式分别对相应颜色进行调试
[code]Shader "Hidden/TestVertex" { Properties { _MainTex ("Texture", 2D) = "white" {} _TestColor ("Color", Color) = (0,1,1,1)//第二步 为了方便调试定义颜色变量 } SubShader { Pass { // Color(0,1,1,1) //第一步 改变顶点颜色 // Color[_TestColor]//第二步 引用变量 //第三步:定义材质与灯光如何作用 Material { // Diffuse(1,1,1,1)//材质球的漫反射如何与灯光作用 // Diffuse[_TestColor] //漫反射 // Ambient[_TestColor]// 环境光 // Specular[_TestColor]//镜面反射 Emission[_TestColor]// 自发光 } Lighting On // 负责所有灯光的开关,因为默认是关闭的 SeparateSpecular On // 高光的开关 } } }
下一章节讲解:片段着色器
相关知识借鉴:http://video.mobiletrain.org/course/index/courseId/535?pinzhuanbdtg=biaoti
相关文章推荐
- Unity 3D 图形学 Shader之片段着色器(纹理采样)(五)
- 【猫猫的Unity Shader之旅】之简述3D图形学
- [Unity Shader] 3D模型的简单属性
- 在Unity 3D中,shader是何时编译的,在何时加载入显存中的?
- Unity CG 写一个超酷的 ray-marching(shader纯代码写3D)
- untiy 3d ShaderLab_第 2 章Unity中Shader(着色器)的形态_1_Unity通过ShaderLab 来组织Shader
- untiy 3d ShaderLab_第 2 章Unity中Shader(着色器)的形态_2_Unity中Shader的3种形态
- 提供一套Unity3D双面材质Shader
- Unity3D翻译——Advanced ShaderLab topics
- Unity中使用Shader实现3D打印机效果
- untiy 3d ShaderLab_第 2 章Unity中Shader(着色器)的形态_3_Shader的数据接口:属性和 uniform变量
- Unity 3d Shader实践 —— 第一个Shader
- Unity Shader 顶点着色器参数
- 3D图形学一:模仿草的运动 – GPU(Pixel Shader & Vertex Shader)实现
- unity 3D 添加多个shader遮罩
- unity shader 学习 (2)Vs【顶点着色器】 和 Ps【像素着色器】
- 如何系统的学习 Unity 3D 中的 shader 编写(nvidia cg 编程)?
- Unity ShaderLab: 2D/3D Wave Flag Shader(飘动旗帜)的实现
- 如何系统的学习 Unity 3D 中的 shader 编写nvidia cg 编程
- Unity_Shader开发_图形学基础(五)--------2016.1.9