放大和縮小是使用glOrtho還是glScale的最佳實踐?放大和縮小OpenGl ES
1
A
回答
2
這真的取決於你所說的縮放。
在典型的照相機設置中(例如,從視角獲得),通過減小視場(就像在真實照相機上一樣!)來實現變焦。請參閱gluPerspective的文檔以瞭解從視場到標準透視矩陣的實際數學運算。
glOrtho不會生成透視相機,因此您並不真正模擬標準縮放。它看起來更像是圖片的2-D縮放(您目前使用glOrtho嗎?它不是3D渲染,是嗎?)
1
如果您已經設置了glOrtho的平行投影,那麼您可以通過將參數更改爲glOrtho或使用glScale來放大和縮小。
我傾向於使用glScale,因爲通過縮放1.2而不是重新計算左/右/上/下平面來設置20%縮放比較容易。
雖然我不認爲這是「最佳實踐」。
0
glOrtho通常用於設置投影矩陣; glScale通常用於設置模型視圖矩陣以及其他各種變換。
大多數開發人員僅在每天開始或調整窗口大小時設置投影矩陣。 「縮放」意味着每幀都會改變矩陣,所以它看起來應該屬於模型視圖。
總結:放大模型視圖並使用glScale。
相關問題
- 1. 放大/縮小OpenGL ES
- 2. 在OpenGL中放大/縮小和繪畫
- 3. 的OpenGL ES FBO縮放
- 4. 放大/縮小OpenGL ES 2D遊戲場景
- 5. 使用OpenGL ES縮放和滑動
- 6. OpenGL ES 2.0的捏和縮放
- 7. OpenGL es放大到touchPoint(iOS)
- 8. OpenGL ES畫布大小
- 9. 放大和縮小
- 10. 縮放OpenGL ES的幀緩衝區的
- 11. OpenGL Es 2紋理縮放問題
- 12. OpenGL ES 2.0縮放不起作用
- 13. 如何在Android OpenGL ES中應用拖放和縮放比例
- 14. 如何設置縮小放大和縮小放大縮小尺寸?
- 15. 放大和縮小UIView
- 16. 放大和縮小畫布
- 17. 放大和縮小計算
- 18. 放大和縮小Direct3D
- 19. 放大和縮小在IOS
- 20. 如何使用opengl進行放大和縮小?
- 21. 在OpenGL ES 2.0中進行縮放和旋轉
- 22. UIPinchGestureRecognizer(縮小/放大)
- 23. 混合OpenGL ES 1和OpenGL ES 2
- 24. SCROLLVIEW最小縮放大小
- 25. Opengl ES和texcoord
- 26. ImageView縮放不放大或縮小
- 27. Opengl ES 2.0:獲取紋理大小和其他信息
- 28. 放大和縮小在Java中
- 29. ZedGraph縮放和調整大小
- 30. 捏放大圖像和縮小圖像