计算机图形学(CG)与Shader

计算机图形学是使用数学算法将二维或三维图形转换为计算机显示器的栅格形式。主要研究内容:建模、渲染、动画、人机交互。

Shader其实就是专门来渲染图形的技术(一段代码),通过它我们可以自定义显卡渲染画面的算法,告诉GPU如何绘制模型的顶点颜色及最终像素的颜色等。Shader的制作方式有1.代码编辑 2.可视化节点编辑。

在Unity中编写shaderlab(Unity中编写着色器的一种语言)通过OpenGL或DirectX告诉显卡驱动要做什么,然后显卡驱动指挥GPU进行计算并输出到显示器上。

代码框架
在这里插入图片描述
SubShader(子着色器),可以有多个,Pass块至少有一个,Fallback返回一个已经存在的Shader

Unity Shader的分类
1,表面着色器 Surface Shader
2,顶点/片元着色器 Vertex/Fragment Shader
3,固定函数着色器 Fixed Function Shader

Unityshader中属性的类型有哪些
_Color(“Color”,Color)=(1,1,1,1)
_Vector(“Vector”,Vector)=(1,2,3,4)
_Int(“Int”,Int)= 34234
_Float(“Float”,Float) = 4.5
_Range(“Range”,Range(1,11))=6
_2D(“Texture”,2D) = “red”{}
_Cube(“Cube”,Cube) = “white”{}
_3D(“Texure”,3D) = “black”{}

顶点函数完成顶点坐标从模型空间到剪裁空间的转换(从游戏环境转换到视野相机屏幕上)
片元函数返回模型对应的屏幕上的每一个像素的颜色值

未完待续

发布了9 篇原创文章 · 获赞 0 · 访问量 134

猜你喜欢

转载自blog.csdn.net/weixin_44594884/article/details/104711582