我已經看過MSDN上關於這兩個功能的文檔。但是,我並不完全瞭解這兩種功能之間的區別,除了爲3D設置相機視圖外,另一個功能是爲2D設置相機視圖。如果能夠得到回答將會很好。預先感謝您的意見。gluPerspective與gluOrtho2D
2
A
回答
5
正投影基本上是一個沒有透視的3D投影。從本質上講,它意味着給定的位置不會離觀看者更遠的投影中心。透視顯然是相反的。由於在投影之後用w除以這個事實,意味着具有較大W的值(離世界術語的投影中心更遠的一個值)將「出現」更靠近投影后w中心的中心。正是這種透視投影和w分割給了我們3D圖形的深度感。
如果您記得早期的數學課程中繪製立方體,您會記得如果您將構成立方體末端的2個正方形繪製爲相同大小,則立方體的後端看起來會更大。這是一個正交投影。它看起來很奇怪,因爲我們的眼睛習慣於用透視來看事物。
如果你縮小第二個方格,那麼你可以得到透視圖,從而獲得透視投影。
維基百科有一些很好的圖像,展示了它們之間的差異以及一個很好的解釋。
Parallel (or Othographic) projection
Perspective (or 3D) projection
a decent explanation of perspective in general
相關問題
- 1. 替代gluPerspective(與glFrustrum)
- 2. gluOrtho2D和glViewport
- 3. glOrtho和gluPerspective
- 4. gluPerspective code messy
- 5. glFrustum,gluPerspective和FOV
- 6. 使用頂點緩衝對象與gluPerspective
- 7. gluperspective image goes on dz
- 8. GluPerspective表演奇怪
- 9. gluPerspective()顯示黑屏?
- 10. 未定義參考`gluOrtho2D」
- 11. SFML - gluPerspective函數未找到
- 12. 在OpenGL中使用gluPerspective
- 13. OpenGL多視口和gluPerspective()
- 14. Qt錯誤:未定義引用'gluOrtho2D'
- 15. 如何解決我棄用的gluOrtho2D()?
- 16. gluPerspective,glViewport,gluLookAt和GL_PROJECTION和GL_MODELVIEW Matricies
- 17. gluPerspective和glOrtho都沒有任何效果
- 18. 如何在jogl中使用gluPerspective()?
- 19. 如何在OpenGL中聲明gluPerspective?
- 20. gluPerspective和gluLookAt的奇怪行爲
- 21. 關於重塑功能和gluperspective功能
- 22. 如何僅使用gluPerspective一次?
- 23. OpenGL ES:glOrtho()顯示對象,但gluPerspective()不是
- 24. 使用gluortho2d但繪圖功能不使用新的座標
- 25. 「未知GLU入門gluOrtho2D」在Haskell中使用opengl
- 26. 爲什麼glOrtho()在Mac下工作,但gluOrtho2D()不是?
- 27. 如何在Qt應用程序中替換'gluOrtho2d'
- 28. 拉絲工藝紋理的OpenGL使用gluOrtho2D
- 29. gluortho2d和glViewport的實際區別是什麼
- 30. 在CUDA項目中gluPerspective的未解析的外部符號
還有glOrtho,其用於在3D設置正投影。正交投影經常在3D和2D中使用,特別是對於非遊戲應用(許多CAD/Modeling/etc程序默認爲ortho)。 – 2009-09-09 18:55:11