The CPU Directs the GPU
大意為:CPU驅動GPU繪制圖形顯示在監視器上。
The CPU and GPU Have Separate Memory
DirectX圖形基礎設施(DXGI)示意圖:
簡單說下,Win32應用程序可以使用Direct3D完成與硬件(顯卡)的交互。不僅如此,Direct3D可以通過硬件抽象層(HAL)通過圖形設備驅動程序接口訪問圖形硬件,從而可以充分地發揮顯卡的潛在功能,繪制出高性能高質量的精美圖形來。
交換鏈:
為了讓畫面能夠平滑的過渡,DXGI使用了交換鏈的方法:
交換鏈由兩個或者兩個以上的表面組成,而每個表面都是存儲著2D圖形的一個線性數組,其中每個元素都表示著屏幕上的一個像素。
前臺緩沖區和后臺緩沖區是位于系統內存或顯存里的內存塊,對應于將要顯示的二維顯示區域。前臺緩沖區是顯示在顯示屏上的,后臺緩沖區主要用于圖形繪制的準備工作,準備好之后,就可以和前臺緩沖區進行一個交換動作。
頁面翻轉,是指向前臺緩沖區和后臺緩沖區表面內存的指針在進行著調換動作,也就是說是經過交換表面內存的指針來實現的,而不是通過復制表面的內容實現的。
當然,為了得到更好地效果,我們甚至可以使用三緩沖:
渲染流水線:
渲染流水線是產生3D圖形的處理過程,就像流水作業線一樣,一步接著一步,它的各個步驟都是在GPU上執行的。
1.The Input-Assembler Stage:
這個階段從顯存中獲取你想要渲染的3D模型信息,然后編譯這些信息為渲染做準備。
2.The Rasterizer Stage:
這個階段決定了后臺緩沖區的圖形需要繪制成什么樣的,確切的說哪個像素需要繪制以及它們的顏色是什么。
3.The Output-Merger Stage:
流水線的最后一個階段,將每個獨立的模型整合成一張圖片然后把它放在后臺緩沖區中。
3D坐標系系統:
3D幾何學:
三角形作為最簡單的多邊形,是構建物體模型的基本單元。
為了能夠使用大量的三角形組成三角形網格來描述物體,首先需要定義好三角形的頂點,3個頂點確定一個三角形,而頂點除了定義每個頂點的坐標位置以外,還含有顏色等其他屬性。
圖中三角形由這三個頂點構成:
x = 0, y = 5, z = 1
x = 5, y = -5, z = 1
x = -5, y = -5, z = 1
然而,要給每個三角形都定義它們的3D坐標系,那太枯燥了。而我們不需要這么做,下節課將會學習創建一個表來存放頂點的信息。
基本體:
1.Point Lists點列
A Point List (6 Primitives)
2.Line Lists線列
A Line List (3 Primitives)
3.Line Strips線帶
A Line Strip (5 Primitives)
4.Triangle Lists三角形列
A Triangle List (2 Primitives)
5.Triangle Strips三角形帶
A Triangle Strip (4 Primitives)
A Primitive Quirk基本體繪制習慣:
順時針繪制基本體。
Primitive Only Visible When Drawn Clockwise
看文倉www.92to.com網友整理上傳,為您提供最全的知識大全,期待您的分享,轉載請注明出處。
歡迎轉載:http://www.kanwencang.com/bangong/20161220/74653.html
文章列表