UAC2015W0904SourceUAC2015W0904章节.pptxVIP

  • 3
  • 0
  • 约3.16千字
  • 约 24页
  • 2017-11-27 发布于广东
  • 举报
第04课 CG语言知识及渲染管线 课程名称 Lesson Title CG语言基础知识及渲染管线 学习者等级 Learner Level 专业能力认证课程 模块 Module 图形控制高级应用 本课时长 Duration 45分钟 学习者背景 Learner Background 本课程要求学习者熟悉3D图形学相关知识,了解图形硬件的发展历史,以及DirectX和OpenGL。 教学目标 Objectives 本课的目标是通过讲解3D图形的概念,介绍3D图形渲染管线,能够让学生了解整个图形硬件的流水线。 能够掌握顶点变换的概念。 能够理解图元装配和光栅化及贴图和着色。 能够掌握光栅化操作。 主题 Topics 介绍图形渲染管线 讲解顶点及顶点变换 介绍插值、贴图和着色 光栅操作 介绍图形渲染管线 介绍图形渲染管线 计算unity中Shader的性能 unity中Shader对于游戏性能的影响非常大。其中表现在两个方面: Shader本身。 ✜项目中或者特点摄像机中设置好的渲染路径。 介绍图形渲染管线 CG语言的基础知识 Cg代表“用于图形的C语言”(C for graphics)。C语言是一种非常流行的、开发与20世纪70年代的通用编程语言。Cg语言本身是基于C语言的。如果已经掌握C语言语法的话,那么掌握Cg也会比较容易。 NVIDIA和Microsoft密切协作开发了Cg语言。Microsoft把他们的实现成为高级着色语言,简称HLSL。HLSL和Cg是同样的语言,但是反应了每个公司使用不同的名字来识别语言和它的基础技术。HLSL是Microsoft的DirectX Graphics的一部分。而Cg是独立于三维编程接口的,完全和Direct3D或者OpenGL结合在一起了。一个正确编写的Cg应用程序可以编写一次,然后工作在OpenGL或Direct3D上了。 介绍图形渲染管线 在Unity可以使用GLSL进行图形编程,但是由于Cg语言的跨平台性。一般建议使用Cg语言进行着色器的编写。然后通过Unity将交叉编译成可以被PC、Mobile等设备的图形硬件可以执行的内容。 介绍图形渲染管线 CG图形渲染管线简介 渲染管线也称作渲染流水线或像素流水线或像素管线,是显示芯片内部处理图形信号相互独立的并行处理单元。在某种程度上可以把渲染管线比喻为工厂里面常见的各种生产流水线,工厂里的生产流水线是为了提高产品的生产能力和效率,而渲染管线则是提高显卡的工作能力和效率。 主题 Topics 介绍图形渲染管线 常用讲解顶点及顶点变换 介绍插值、贴图和着色 光栅操作 讲解顶点及顶点变换染管线 顶点 顶点除了有位置信息外,还有一些其他属性,例如颜色、第二(反射)颜色、一个或多个纹理坐标集和一个法向量。法向量指示了物体表面在该点的方向,它是专门用来计算光照的。 讲解顶点及顶点变换 顶点变换 顶点变换(Vextex transformation)是图形硬件流水线中的第一个处理阶段。顶点变换在每个顶点上执行一系列的数学操作。这些操作包括把顶点位置变换到屏幕位置以便光栅器使用,为贴图产生纹理坐标,以及照亮顶点以决定它的颜色。 讲解顶点及顶点变换 经过变换的顶点流按照顺序被送到下一个被称为图元装配和光栅化的阶段。 在图元装配阶段根据伴随顶点序列的几何图元分类信息把顶点装配成几何图元。这将产生一序列的三角形、线段和点。这些图元需要经过裁剪到可视平截体(三维空间中的一个可见的区域)和任何有效的应用程序指定的剪裁平面。光栅器还可以根据多边形的朝前或朝后来丢弃一些多边形。这个过程被称为挑选(culling)。 差值、贴图和着色 介绍图形渲染管线 讲解顶点及顶点变换 介绍插值、贴图和着色 光栅操作 差值、贴图和着色 图元装配和光栅化 经过剪裁和挑选剩下的多边形必须被光栅化。光栅化是决定哪些像素被几何图元覆盖的过程。多边形、线段和点根据为每种图元指定的规则分别被光栅化。光栅化的结果是像素位置的集合和片段的集合,当光栅化后,一个图元拥有的顶点数目和产生的片段之间没有任何关系。例如,一个有三个顶点组成的三角形可以占据整个屏幕,因此需要生成上百万的片段。 差值、贴图和着色 像素是图像元素的简称。一个像素代表帧缓存中某个指定位置的内容,例如颜色,深度和其他与这个位置相关的值。 一个片段是更新一个特定像素潜在需要的一个状态。 之所以术语片段是因为光栅化会把每个几何图元(例如三角形)所覆盖的像素分解成像素大小的片段

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档