OpenGL ES 3.0 Programming Guide(second edition)针对中文版翻译的补充——第一章

由于大多数同学都是第一次接触OpenGL,这里只做一些粗略的点题,更详细的问题我们可以在群里提问。

请同学们在精读本书的时候能够抓住要领,希望每个同学都能跟上进度。




希望大家每次都先重复阅读下面这一段Pipeline:


OpenGL ES 3.0 Programming Guide(second edition)针对中文版翻译的补充——第一章_第1张图片





===》

Model Coordinate   --->模型变换--->World  Coordinate--->观察变换--->View Coordinate--->投影变换--[o.pos = mul(MVP, v.position);逐顶点光照计算]--->

Homogeneous Cliping Coordinate--->组回图元 --->Cliping--->透视除法PD--->Normalized Device Coordinates( NDC:OGL,Unity(111)~(-1,-1,-1);DX(1,1,0)~(-1,-1,-1)  )--->

窗口映射(视口变换){glViewPort;glDepthRangef;}--(640*480)->WindowCoor  [X~(0,640-1)  ,Y~(0,480-1) ,Z~(0.0,  1.0) ]  --->

Culling{glFrontFace;glCullFace;} --->光栅化




English Edition    Page:177

7.3.1坐标系统

英文:

After the primitives have been clipped against the six clipping planes,the vertex coordinates undergo perspective division to become normalized device coordinates. A normalized device coordinate is in the range –1.0 to +1.0.
这里强调了,在做cliping的情况下,一个顶点:先做透视除法,把顶点坐标变成NDC中的数据,然后再进行裁剪操作。OGL中的NDC中的xyz都在[-1.0,  1.0]中取值。而在DX中,NDC中,z在[0.0,  1.0]中去取值。

注意:这个地方可以认为在GPU中,对于每个顶点而言,先透视除法,然后顺便对这个顶点做Cliping。



1.1.2 图元装配

英文:

Each vertex of a primitive  is sent to a different copy of the vertex shader. Duing primitive assembly, these vertices are grouped back into the primitive.

这句强调的是,构成一个图元的那些顶点(比如三角形的三个顶点),在顶点着色器阶段是被分开到不同的vertex shader中进行变换的;而到了图元装配阶段呢,要再次组合到一起。

你可能感兴趣的:(Opengl)