在我的iOS應用程序(針對iPad)中,我想使用兩個非功率(NPT)紋理。我的GL_VERSION查詢返回「OpenGL ES 2.0 APPLE」。根據規範,它應該支持NPT紋理,但是一個簡單的測試表明我需要在紋理出現之前將紋理調整到2^N。iOS中兩個紋理的非功率
Apple不支持完整的ES 2.0規範嗎?我在哪裏可以找到不支持的文檔?
我正在使用Xcode 4.3.2和iOS 5.1。
編輯:
在ES 2.0.25規範(第3.8.2節),仔細一看,發現,有要滿足NPOT工作的幾個條件。從本質上講,如果我使用下面的設置,我能夠加載NPOT紋理:
// use linear filetring
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR);
// clamp to edge
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
我應該關閉這個或回答我的問題?
無需關閉問題,您可以撰寫答案並接受它。有一天它可能會對別人有所幫助。 – Tim
我幾天前還記得同樣的問題和答案。這是一個經常性的話題。 – Luca