Chapter 2. The Graphics Rendering Pipeline 图形绘制流水线

Slides:



Advertisements
Similar presentations
定 格 入 格 破 格 —— 新诗仿写复习训练 仿照下列句子,再把 “ 人生 ” 比喻成 “ 大海 ”“ 天空 ” , 造两个句子。 如果说人生是一首优美的乐曲,那么痛苦则 是其中一个不可或缺的音符。 参考答案: 1 、如果说人生是一望无际的大海,那么挫折则 是其中一个骤然翻起的浪花。 2 、如果说人生是一片湛蓝的天空,那么失意则.
Advertisements

大學甄選入學 個人申請面試技巧 黃仁竑 教授 中正大學資工系. 大綱 面試目的 面試流程 面試技巧 ( 注意事項 ) 結語.
台北市立南港高工 建築科 Architecture 建築科之精神:活力、責任、效率 建築科之展望:共築美麗人生 綜合高中 土木建築學程簡介  綜高土建升學進路  未來出路展望  專業證照考試  未來展望圖例  綜高土建學程課程架構  土建群統一入學測驗考科  升學人數統計.
第三章:材質製作與模型.
3D動畫發展與就業趨勢 台灣首府大學 資訊與多媒體設計學系 助理教授 謝慧民 博士
4月2日是安徒生诞辰200周年纪念日,世界各国的读者以各种各样的方式怀念这位给儿童带来感动和快乐的童话巨人。
地理信息系统的空间特性 空间实体及其描述 空间问题论述 空间处理方法 北京大学遥感与GIS研究所 程承旗.
第十一章 3D遊戲設計技巧 課前指引 一套3D遊戲的簡易製作過程,可以從腳本的企劃與構思,設計劇中人物跟週邊場景,然後再交給3D建模人員建立模型(如透過3DMax與Maya軟體),最後可以選一套合適的3D引擎來整合,並且安排介面控制角色的製作與邏輯,同時將人物場景匯入3D引擎中,最後透過玩家的耐玩度測試及調整就可以完成。如果是網路遊戲,上線之後還必須定時維護伺服器、或視情況增減伺服器。
问卷调查的规范与技术 问卷调查的规范与技术.
第一章 导论. 第一章 导论 参考文献 孔令德.计算机图形学基础教程(Visual C++版) 孔令德.计算机图形学实践教程(Visual C++版) 胡事民.计算机图形学基础教程.
一、平面点集 定义: x、y ---自变量,u ---因变量. 点集 E ---定义域, --- 值域.
參考資料:﹝升中全接觸﹞ 香港明愛青少年及社區服務
第三十七章 视图与投影 复习.
浙江大学CAD&CG国家重点实验室,教I 三楼
第二讲 北洋军阀的兴起与衰亡 主讲:徐成发.
師資培育中心外埠教育參觀.
管理学基本知识.
滁州学院首届微课程教学设计竞赛 课程名称:高等数学 主讲人:胡贝贝 数学与金融学院.
第8章 系統架構.
授課主題:中俄兩國對外基本政策 授課教授:郭武平教授
计算机图形技术 余 莉
教育信息化建设诊断评价与改进一级指标体系构建
報告人:古博文 彰師大運動健康研究所副教授 人權教育基金會執行長 100年8月
視聽資料之定義 視聽資料 非書資料 多媒體資料.
拾貳、 教育行政 一、教育行政的意義 教育行政,可視為國家對教育事務的管理 ,以增進教育效果。 教育行政,乃是一利用有限資源在教育參
Chapter 3. Visual Appearance 视觉外观
課程銜接 九年一貫暫行綱要( )  九年一貫課程綱要( ) 國立台南大學數學教育系 謝 堅.
2.4 二元一次方程组的应用(1).
Texture Mapping 靜宜大學資工系 蔡奇偉 副教授 2006.
Linux Graphics 邹南海.
如何實施危害辨識、危害控管檢討分析講解與實作
计算机图形学 讲 授:董兰芳 研究方向:科学计算可视化 图形、图像处理 模式识别 中国科学技术大学 视觉计算与可视化实验室
(A Survey on Image-based Rendering Techniques)
Chapter 6 Graph Chang Chi-Chung
第十章 基于立体视觉的深度估计.
Chapter 10 Three-Dimensional Viewing (三维观察)
3D動畫與 3D Studio MAX 第六組 蘇哲群.
第八章 Illumination and Shading
HLA - Time Management 陳昱豪.
微程序控制器 刘鹏 Dept. ISEE Zhejiang University
Introduction to OpenGL (1)
認識香港 廢紙回收.
第三章 基本觀念 電腦繪圖與動畫 (Computer Graphics & Animation) Object Data Image
纹理映射.
Introduction to OpenGL (1)
ICG 2018 Fall Homework1 Guidance
特殊教育相关政策法规解析 王 辉 南京特殊教育职业技术学院
Attributes of Output Primitives
第3章 認識處理元.
Chap 01 3D動畫原理 3D電腦動畫 吳育龍老師.
第三章 基本觀念 電腦繪圖與動畫 (Computer Graphics & Animation) Object Data Image
電腦基本概念 張森 高階 適合程度 初學.
混合绘制 2019/4/5 Visual Analytics Group | CAD&CG国家重点实验室.
Chapter 5 Attributes of Output Primitives (图元的属性)
Architecture and Systems 研究群 報 告 人:單智君 陳昌居 鍾崇斌 中華民國95年11月30日
遊戲圖學 Game Graphics 授課教師:陳宏光 副教授 實習助教:陳啟峰.
中国科学技术大学计算机系 陈香兰 Fall 2013 第三讲 线程 中国科学技术大学计算机系 陈香兰 Fall 2013.
第二章 電腦硬體知識 Chapter 2-電腦硬體知識.
3D Game Programming Projection
多媒体技术 中南大学信息科学与工程学院 黄东军.
BiCuts: A fast packet classification algorithm using bit-level cutting
Baryon meson.
現代專案管理教材 第一章 專案與專案管理 博碩文化出版發行.
重庆市第一0四中学 王继军.
Orthographic Projection
交互式计算机图形处理系统 哈尔滨工业大学计算机学院 唐好选 2019年7月27日.
LCD的驱动控制实验.
IMU Deblur 張浩軒.
用加減消去法解一元二次聯立方程式 台北縣立中山國中 第二團隊.
Presentation transcript:

Chapter 2. The Graphics Rendering Pipeline 图形绘制流水线 金小刚 Email: jin@cad.zju.edu.cn 浙江大学CAD&CG国家重点实验室,教I 三楼

主要内容 流水线的主要功能是根据给定的虚拟摄像机、三维物体、光源、光照模型、纹理等绘制一幅二维图像。 A chain is no stronger than its weakest link 流水线的速度是由最慢的部分(bottleneck)而非最快部分决定的。 我们这章主要集中讲功能(function)而非具体实现(implementation)。

Each stage may be a pipeline Architecture(体系结构) Three conceptual stages: Application Geometry Rasterizer Each stage may be a pipeline

Application Stage(应用层):CPU 用软件来实现,用户可完全控制(而其它层则建立在硬件之上) 应用层的输出为Rendering primitives(如点、线和三角形) Processes:碰撞检测、纹理动画、基于变换的动画、Morphing、响应输入设备(键盘、鼠标、VR头盔)的操作等

The Geometry Stage(几何层) 主要处理大部分多边形和顶点操作 Model & view Transform Lighting Projection Clipping Screen Mapping 几何层可进一步细分为上述功能层

Model and View Transform Model space World space Model transform Model coordinates World coordinates Camera or eye space View transform Camera coordinates

Lighting and Shading 用光照方程计算模型每个顶点的颜色(根据法向、光源、材料、纹理等) 模型通常用三角形表示(大部分图形硬件支持) 光亮度插值技术:主要是Gouraud shading

Projection 光照计算后的下一步是投影变换,把视域体(view volume)变换为一单位立方体 两种投影方法:正交投影(orthographic or parallel projection)和透视投影(perspective projection) 正交投影:视域体从长方体变换为单位立方体。特点:平行线在变换后仍是平行线 透视投影:视域体从平头锥体变换为单位立方体。物体离摄像机越远,在屏幕上的投影越小,与人的视觉系统相符

Clipping 只有全部或部分可见的物体需要传到光栅化层。 完全可见:直接传到光栅化层; 完全不可见:不需要绘制; 部分可见:需要裁剪 由于裁剪在投影变换之后,只需把几何对单位立方体裁剪,使得裁剪变得简单。

新顶点 单位立方体 x x Clipping z z 新顶点

Screen Mapping 单位立方体 (x2,y2) Screen mapping Test OOO (x1,y1)

The Rasterizer Stage(光栅化层) 目的:计算每个象素的颜色。 处理Per-pixel operations 每个象素的信息存在颜色缓存(color buffer) 采用双buffer技术:绘制在back buffer进行,当绘制完成后,再交换到front buffer 在该层解决可见性问题: 大部分图形硬件采用Z-buffer技术 Z-buffer:存贮离摄像机最近点场景的Z值

Z-buffer 算法 如果某象素新的Z值比Z-buffer中的原有值小,则用新的Z值和颜色更新该象素; 优点:简单、可用硬件实现、与物体绘制顺序无关。算法复杂度为O(n) 但处理透明物体困难。

光栅化层中的buffer Color buffer: 每个象素的颜色值 Z buffer:每个象素的Z值 Alpha buffer: 每个象素的不透明度 Stencil buffer(模板缓冲区) : 用来产生特效的强大工具。是OpenGL的一部分,通常每个象素包含1~8 Bits。基本体素可用各种函数绘制到模板缓冲区,然后用其内容来控制绘制到Color buffer和Z buffer的几何体素。 例子:先把一填充园绘制到模板缓冲区,后续的几何体素只有在填充园区域内绘制,而其它区域不绘制。

光栅化层中的buffer(续) Frame buffer:常指系统中所有的buffer,但有时仅指Color buffer和Z buffer Accumulation buffer(累积缓存): 1990由Haeberli和Akeley提出。在该缓存内,图像可以通过一系列操作累积。 实例:用来产生运动模糊(motion blur)、反走样、软影、景深(depth of field)效果。

总 结 CPU GPU Application Geometry Rasterizer 硬件加速 总 结 CPU GPU Application Geometry Rasterizer 硬件加速 硬件加速从流水线的末端开始,然后逐步往高层发展,目前有些应用层的工作已经可以用可编程硬件来实现。 硬件实现的唯一好处:速度! 在实时绘制中,速度是关键!

Graphics Pipeline: GPU CPU GPU Graphics State Vertex Processor Pixel Processor Application Vertex Processor Assembly & Rasterization Pixel Processor Video Memory (Textures) Vertices (3D) Xformed, Lit Vertices (2D) Fragments (pre-pixels) Final pixels (Color, Depth) Render-to-texture Note: Vertex processor does all transform and lighting Pipe widths vary Intra-GPU pipes wider than CPUGPU pipe Thin GPUCPU pipe Many caches and FIFOs not shown Soon: render-to-vertex-array Here’s what’s cool: Can now program vertex processor! Can now program pixel processor!

Graphics Pipeline: GPU CPU Geometry Storage Geometry Processor Rasterizer Fragment Processor Framebuffer Texture Storage + Filtering Vertices Pixels

Texture Storage + Filtering Possible Bottlenecks CPU transfer transform raster texture fragment frame buffer CPU Geometry Storage Geometry Processor Rasterizer Fragment Processor Framebuffer Texture Storage + Filtering CPU/Bus Bound Vertex Bound Pixel Bound