美文网首页
33Shader(着色器)的认识(一)

33Shader(着色器)的认识(一)

作者: _谭小坤 | 来源:发表于2017-04-03 13:19 被阅读23次

一、什么是 Shader##

Unity3D的所有渲染工作都离不开着色器(Shader),如果是进行3D游戏开发的话,想必您对着两个词不会陌生。Shader(着色器)实际上就是一小段程序,它负责将输入的Mesh(网格)以指定的方式和输入的贴图或者颜色等组合作用,然后输出。绘图单元可以依据这个输出来将图像绘制到屏幕上。输入的贴图或者颜色等,加上对应的Shader,以及对Shader的特定的参数设置,将这些内容(Shader及输入参数)打包存储在一起,得到的就是一个Material(材质)。之后,我们便可以将材质赋予合适的renderer(渲染器)来进行渲染(输出)了。
所以说Shader并没有什么特别神奇的,它只是一段规定好输入(颜色,贴图等)和输出(渲染器能够读懂的点和颜色的对应关系)的程序。而Shader开发者要做的就是根据输入,进行计算变换,产生输出而已

二、Shader的分类##

表面着色器(Surface Shader) - 为你做了大部分的工作,只需要简单的技巧即可实现很多不错的效果。类比卡片机,上手以后不太需要很多努力就能拍出不错的效果。
片段着色器(Fragment Shader) - 可以做的事情更多,但是也比较难写。使用片段着色器的主要目的是可以在比较低的层级上进行更复杂(或者针对目标设备更高效)的开发。

三、Shader 编写语言种类##

Shade种类编写语言 GPU语言 编写着色器

四、内置Shader介绍##

Shader属性的介绍 顶点光照Shader和法线高光Shader 开销的大小计算 StandardShader介绍 原理

相关文章

  • 33Shader(着色器)的认识(一)

    一、什么是 Shader## Unity3D的所有渲染工作都离不开着色器(Shader),如果是进行3D游戏开发的...

  • OpenGLES2.0(三)着色器的基本使用

    着色器在OpenGL中起着很重要的角色,前面我们也对着色器基本认识,图像渲染的,用来替代固定渲染管线的可编程程序。...

  • Android OpenGL ES从白痴到入门(五):妖艳的着色

    注:小菜鸡谈技术,不要全信,否则后果自负! 这部分主要是了解一下概念,认识着色器是什么东西,着色器程序是如何运行的...

  • OpenGL学习--着色器使用

    单元着色器 平面着色器 上色着色器 默认光源着色器 点光源着色器 纹理替换矩阵着色器 纹理调整着色器 纹理光源着色器

  • 《WebGL 编程指南》笔记 —— 第九章 层次模型

    着色器对象与程序对象着色器对象:着色器对象管理一个顶点着色器或一个片元着色器。每一个着色器都有一个着色器对象。程序...

  • OpenGLES开发基础(二、创建和使用着色器)

    在上一节的文章中,我们对着色器的基础有一些基础的认识。学习到这里,下面我们挽起裤管就是干,看看着色器在开发中的应用...

  • OpenGL ES 自定义着色器

    着色器 创建着色器 删除着色器 编译着色器 将着色器的源代码附着到着色器对象上。 开始编译着色器源代码。 创建与链...

  • Unity3Dshader中的RenderType

    Opaque: 用于大多数着色器(法线着色器、自发光着色器、反射着色器以及地形的着色器)。Transparent:...

  • OpenGL ES 之 GLSL和滤镜

    着色器的渲染过程在渲染过程中,必须存储2中着色器,分别是顶点着色器、片元着色器。顶点着色器是第一个着色器、片元着色...

  • OpenGL的一些学习

    资料来源:逻辑教育 OpenGL 固定管线中常见的几种着色器 单元着色器 平面着色器 上色着色器 默认光源着色器 ...

网友评论

      本文标题:33Shader(着色器)的认识(一)

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