將『OpenGL』移稙過『Andord』. 但OpenGL ES偏偏冇gluPerspective()視錐投影.但有glFrustumf()設定視口.
通過glFrustumf()設置視口, 得到 gluPerspective()視錐投影. |
void gluPerspective(double fovy,double aspect,double zNear,double zFar){
double ymax = zNear * tan(fovy * 3.141592654f / 360.0f); double ymin = -ymax; double xmin = ymin * aspect; double xmax = ymax * aspect; glFrustumf(xmin, xmax, ymin, ymax, zNear, zFar); } |
3D相機投影代碼
glViewport(0,0,viewport_width,viewport_height); | 重置視區尺寸 |
glMatrixMode(GL_PROJECTION); | 設定投影矩陣 |
glLoadIdentity(); | 載入單位矩陣 |
gluPerspective(fov,aspect_ratio,near_clip_z,far_clip_z); | 設置視錐體投影 |
glMatrixMode(GL_MODELVIEW); | 設定模型視圖矩陣 |
glLoadIdentity(); | 載入單位矩陣 |