2016-03-01 51 views
0

使用具有大點大小的點進行渲染時,在桌面OpenGL下,這些點將被裁剪到中心。也就是說,如果中心在屏幕外,它們將被撲滅,即使部分光柵化值可見,也會導致它們消失。 (僅供參考,僅在符合桌面OpenGL實現時發生,某些桌面GL實現忽略此規則)金屬夾指向中心嗎?

但是,OpenGL ES並未明確執行此操作。點精靈只夾在近/遠平面上,而不是在視圖體積的兩側。 Direct3D也使用這些規則。

Apple的Metal遵循哪些規則?

回答

4

目前,在AMD和Nvidia GPU上的OS X上,當它們的中心位於剪輯體積之外時,點將被撲滅。在iOS和OS X上,英特爾GPU上的點將被裁剪到卷的邊緣,並且只有在完全掉到外面時才被刪除。由於這是沒有記錄(據我所知),它可能會有所變化。

+0

即使對於OSX上的NVIDIA硬件,這是否也是如此?他們*從不*執行桌面GL裁剪行爲。 –

+1

我剛剛在英特爾上測試過它,它似乎是剪輯而不是剔除。很明顯,我的答案需要一些改進。我有機會進行調查時會更新它。 – warrenm

+0

進一步測試之後,看起來這種行爲是依賴於實現的,並且在AMD,Intel和Nvidia之間有所不同。我相應地更新了我的答案。 – warrenm