簡體   English   中英

iOS OpenGL ES 2.0着色器的限制

[英]iOS OpenGL ES 2.0 Shader's limits

片段着色器中着色器的大小或變量數有一些限制嗎?

我有片段着色器,它在一些閾值的代碼大小之后返回空圖像。 我認為,問題在於着色器的大小或變量數的限制。

編譯后我檢查着色器程序-一切正常。

蘋果說:

OpenGL ES限制了可在頂點或片段着色器中使用的每種變量類型的數量。 超過這些限制時,OpenGL ES規范不需要實現提供軟件后備; 相反,着色器根本無法編譯或鏈接。

赫羅諾斯說:

2可執行着色器的長度這是由一致性測試定義的。 3臨時變量的使用變量的最大數量由一致性測試定義。

但是我找不到這個限制的價值。

更新:

如果圖像很大,有時應用程序會使用EXC_BAD_ACCESSglFlushglDrawArrays上中斷。

解決了

問題出在太長的循環中,並且由此導致計算時間過長。 着色器並不大,但是非常復雜。

更新

相同的問題: iPhone 4S上的GPUImage Kuwahara過濾器

如果您正在檢查着色器編譯和鏈接的結果(如Apple最佳實踐中的清單10-1所示 ),並且沒有錯誤,則其他原因會導致圖像空白。

如果您不檢查日志,則應開始檢查:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM