OpenGL視口變換函式 glViewport

2021-08-04 20:13:13 字數 528 閱讀 6039

呼叫glviewport函式來決定視見區域,告訴opengl應把渲染之後的圖形繪製在窗體的哪個部位。當視見區域是整個窗體時,opengl將把渲染結果繪製到整個視窗。

glviewport(x:glint;y:glint;width:glsizei;height:glsizei);

其中,引數x,y指定了視見區域的左下角在視窗中的位置,一般情況下為(0,0),width和height指定了視見區域的寬度和高度。注意opengl使用的視窗座標和windowsgdi使用的視窗座標是不一樣的。圖1表示了在windowsgdi中的視窗座標,而圖2則是opengl所定義的視窗座標。

圖1. windowsgdi中的視窗座標                                     圖2. opengl所定義的視窗座標

投影變換與視口變換

一些說明 0.投影變換 描述如何指定視景體 viewing volume 的形狀和方向。視口變換 解釋如何控制三維模型座標到螢幕座標的變換。1.無論是透視投影還是平行投影 正交投影 只有在視景體中的物體才可見。2.下圖為opengl預設視點位置 eyex,eyey,eyez 0.0,0.0,0.0 ...

DirectX視口變換矩陣詳解

視口變換在投影變換之後,視口變換的作用是將投影平面上的點轉換為螢幕上的點,這是乙個縮放的過程。投影變換的作用是將viewing frustum 視景體 中的場景投影到乙個平面上,這個平面就是投影平面,在directx中,使用近剪裁平面作為投影平面 z 1 關於透視投影的矩陣求解,請參考透視投影詳解 ...

DirectX視口變換矩陣詳解

視口變換在投影變換之後,視口變換的作用是將投影平面上的點轉換為螢幕上的點,這是乙個縮放的過程。投影變換的作用是將 viewing frustum 視景體 中的場景投影到乙個平面上,這個平面就是投影平面,在directx中,使用近剪裁平面作為投影平面 z 1 關於透視投影的矩陣求解,請參考 透視投影詳...