Game Engine Architecture
439 tive projection, we must do this very carefully so as to account for perspective foreshortening. This is known as perspectiv ...
440 10. The Rendering Engine We can render triangles expressed in homogeneous clip space by simply drawing their (x, y) coordina ...
441 ceed to render a new frame into buff er C, rather than idling while it waits for the display hardware to fi nish scanning bu ...
442 10. The Rendering Engine ing, aliasing arises because we are using a discrete set of pixels to sample an image that is reall ...
443 back-to-front order (the so-called painter’s algorithm ). However, as shown in Figure 10.37, this doesn’t work if the triang ...
444 10. The Rendering Engine using them as our depth measure achieves uniform precision across the en- tire depth range. This te ...
445 plicated N times on the die, N data elements can be processed in parallel by that stage. A parallelized pipeline is shown in ...
446 10. The Rendering Engine z Application stage (CPU). Potentially visible mesh instances are identifi ed and submitt ed to the ...
447 10.2.1.2. Implementation of the Pipeline The fi rst two stages of the rendering pipeline are implemented offl ine, usually e ...
448 10. The Rendering Engine Figure 10.42. The Unreal Engine 3 graphical shader language. Figure 10.41. Nvidia’s Fx Composer all ...
449 like wood, rock, metal, plastic, cloth, skin, and so on. There’s no reason to du- plicate these materials inside every mesh. ...
450 10. The Rendering Engine 10.2.4. A Brief History of the GPU In the early days of game development, all rendering was done on ...
451 10.2.5. The GPU Pipeline Virtually all GPUs break the pipeline into the substages described below and depicted in Figure 10. ...
452 10. The Rendering Engine Section 10.3.3.1), rendering the six faces of a cube map (see Section 10.3.1.4), fur fi n extrusion ...
453 10.2.5.7. Triangle Traversal Each triangle is broken into fragments (i.e., rasterized) by the triangle travers- al stage. Us ...
454 10. The Rendering Engine structure is hard-wired, but whose operators and parameters can be confi g- ured in order to produc ...
455 9 brought with it support for high-level C-like shader languages such as Cg (C for graphics), HLSL (High-Level Shading Langu ...
456 10. The Rendering Engine mat. Matrices can be represented by groups of three or four registers (rep- resented by built-in ma ...
457 again if the vertex in question has since been ejected from the cache to make room for newly processed vertices. Textures A ...
458 10. The Rendering Engine VtxOut vshaderMain(VtxIn in) // in maps to input // registers { VtxOut out; // ... return out; // o ...
«
19
20
21
22
23
24
25
26
27
28
»
Free download pdf