渲染管线、OpenGL、DirectX,给技术小白的计算机科普系列

“渲染管线是干什么用的?”

“OpenGL、DirectX和渲染管线的关系?”

“渲染管线谁来开发?”

“为什么一些游戏引擎厂商也在做渲染管线?”


这是笔者在研究时曾碰到过的一些问题。看了大神们的解答,理解如下。理解可能略有浅薄,之后会不断学习持续更新:


1. 渲染管线(render pipeline)是什么

告诉GPU怎么进行图形渲染的架构

    GPU是什么?专门用来处理图像的芯片。CPU作为计算机的大脑调度事情+处理事情,一个人搞不定了,出现GPU帮助CPU分担一部分事情

分为3个大步骤,应用阶段(CPU把要处理的数据发给GPU)、几何阶段(处理模型,加光影、剪裁等)、光栅化阶段(把3D模型“像素化”,使其能在屏幕是显示出来)

具体步骤细节详见“猴子也能看懂的渲染管线(Render Pipeline)

1)应用阶段:CPU把要处理的数据(渲染图元)发给GPU

2)几何阶段:输出顶点信息

    什么是顶点信息(Vertex)?任何3D模型都是由三角形/四边形构成。顶点信息=每个三角形/四边形的顶点的xyz坐标。知道顶点坐标,连线,就能画出3D模型

    包括~7个子步骤:

CPU把一部分图元信息存起来,用于非渲染场景(例如一面墙,发给GPU渲染,还要留着用于计算物体碰撞)。发Draw Call指令给GPU,让GPU开工。

②顶点着色器,进行模型转化与相机转换。顶点的坐标用于描述在一个“世界”中它的位置,但是为了“拍摄”这个模型,需要告诉计算机这个模型相对摄像机的位置。需要坐标的转化,把之前的世界坐标转化为相对摄像机的坐标。还可以进行光照处理,给模型加上光影。

(source: https://juejin.cn/post/6844904144277340174)

曲面细分着色器(Tessellation Stage):给模型多加些顶点,使模型更圆滑。或者增加细节,比如把圆球变成陨石。

几何着色器(Geometry Shader):改、删顶点。(和上一步区别by我的理解,请大佬指正:曲面细分着色器更细节,改细节形状,比如表面凹凸;几何着色器改大的形状,比如圆球变成一半)。

投影:把3D图形2D化,降维~。从而使其能显示在我们的2D屏幕上。

剪裁:把屏幕“看”不到的部分去掉,不用渲染,节省资源

屏幕映射:屏幕是由尺寸去别的,调整模型坐标系

3)光栅化阶段:即”像素化“。屏幕由像素构成,要让模型显示在屏幕中。


包括  个子步骤

图元组装:把点连成线,组成三角形。

三角形遍历(Triangle Traversal):确定填色的区域/像素点。

③片元着色器:确定每块(片元)填什么颜色。

④逐片元操作(Per-Fragment Operations):测试(Test)并合并片元,完成上色。测试过程中会进行剪裁、深度测试(设置渲染物体之间的遮挡关系)


2. OpenGL、DirectX和渲染管线的关系?

OpenGL、DirectX是实现渲染管道的一套API。整个渲染管线需要调用很多应用程序。使用OpenGL、DirectX后,程序员无需自己写代码,直接调用即可(例如烟雾效果不用自己写,直接调就行)

二者的区别?

OpenGL是Khronos开发的

DirectX是微软开发的

二者的管线流程、允许开发者配置的部分略有不同。二者各有优劣,暂不展开


3. OpenGL、DirectX和GPU硬件的关系?

渲染管线包括两部分,和硬件GPU强相关的,开发者不能改的;以及开发者可配置的部分。前一部分需要硬件厂商基于OpenGL/DirectX调整配置

OpenGL/DirectX会提供“说明书”(OpenGL规范)给GPU厂商(NVIDIA等)


4. 谁来开发渲染管线?渲染管线涉及到哪些公司?

- GPU公司:需要根据OpenGL/DirectX,调整硬件

- 微软、Khronos:运营维护OpenGL/DirectX

- 游戏开发者:基于自己需求,用OpenGL/DirectX等开发游戏


遗留问题:

- 渲染管线和游戏引擎商的关系?

- 渲染管线和OS厂商的关系?


参考资料:感谢各位大神答疑!

猴子也能看懂的渲染管线(Render Pipeline)

[中英双字]科普 图形是怎么渲染到屏幕上的 @游核网

OpenGL编程指南(原书第9版)》——1.1 什么是OpenGL

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,036评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,046评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,411评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,622评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,661评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,521评论 1 304
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,288评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,200评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,644评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,837评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,953评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,673评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,281评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,889评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,011评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,119评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,901评论 2 355

推荐阅读更多精彩内容