使用Matrix.frustumM設置OpenGLES繪製距離時,我注意到您不能將近繪製距離設置爲零,並且任何小於1的值都會給出真的很奇怪的失真。將近距離設置爲1可以在大多數情況下正常工作,但是當相機距離物體比距離更近時,它看起來很可怕,因爲它們沒有被繪製(或者其中的一部分沒有繪製)。對此有什麼可以做的嗎? 非常感謝您的時間。Matrix.frustumM導致問題無法將近距離繪製距離設置爲零
1
A
回答
2
實際上可以做的不多。近和遠剪切平面將像素剪切更接近near
或進一步然後far
。除此之外,near
有點特殊,因爲它通過組合邊界參數(left
,right
,up
和down
)來定義您的視野。所以如果你有一個四邊形的座標與那些邊框的座標相同,那麼當全屏幕的時候恰好是near
。因此,平面不能爲零或者甚至是負數,因爲例如使用平截頭體將在零個單位處的對象似乎無限縮放。
你仍然可以使用小於1的值,而不會有一些奇怪的工件。你應該做的是看一些關於如何通過設置視場來定義frustum
的例子。一般而言,您可以爲其中一個尺寸(如45度寬)定義角度(視野),然後根據需要定義您的near
和far
,但兩者都應該是正面的。現在使用三角法計算使用angle
和near
的left
和right
,並使用up
和down
的相同值,但是按屏幕(視圖)比例縮放。通過這樣做,在更改near
參數時,您將不會發生失真。
相關問題
- 1. 圓分離距離 - 最近鄰問題
- 2. 最近距離(分離集)
- 3. 在jQuery中爲長距離短距離設置動畫位置
- 4. 距離最近鄰居的平均距離的近似值?
- 5. 計算距離位置的距離 - iPhone
- 6. 距離Cell塔的距離
- 7. 設置傳呼距離
- 8. 圓周距離問題
- 9. Google距離矩陣問題
- 10. 如何與$附近距離?
- 11. 查找接近距離GPS
- 12. 近距離警告教程
- 13. Android BLE近距離通知
- 14. 按特定距離查找距離目標位置最近的位置
- 15. 距離總是等於零
- 16. Android NFC(近距離無線通訊)
- 17. Android的位置距離近在咫尺
- 18. 從距離閾值距離更近的雲中移除點
- 19. 距離點和線最近的曼哈頓距離
- 20. Python - Dijsktra的算法距離問題
- 21. Swift:爲距離設置速度
- 22. 將區域與標記距離最近
- 23. 距離控制LED
- 24. Leaflet.js - 將折線繪製到距離某個位置最近的點
- 25. 將RSSI轉換爲距離
- 26. Levenstein轉置距離
- 27. 查找$ nearSphere零距離導致查詢點
- 28. 將MKMapView的距離轉換爲UIView的距離
- 29. 在JFrame上繪製點的總距離
- 30. 繪製JfreeChart中點的距離