08/09 02:46 (
@gorry5) やっとGalaxy TAB/NexusでのOpenGL不具合を特定。glStencilFunc()でGL_EQUAL(とGL_NEVER)以外を指定すると、glColorMask()によるカラーバッファ書き込みマスクが無効になるケースがある模様
08/09 02:50 (
@gorry5) カラーバッファ書き込みマスクが無効になるということは、ステンシルバッファを作成している最中にカラーバッファにも書いちゃって、マスキングの意味がなくなる :D
08/09 02:57 (
@gorry5) 対策:カラーマスクが失敗しているときもデプスによるマスクは生きているので、glDepthFunc(GL_NEVER)で「常に失敗するデプスマスク」を併用することで回避する
08/09 03:21 (
@gorry5) 常にデプスによるマスクだけでもいいのだけど、そのためだけにデプスバッファを確保するのはもったいないとかめんどくさいとか、そういう向きにはカラーマスクも併用しちゃうのが楽、と
08/09 12:32 (
@gorry5) 昨晩のGalaxy TAB/NexusのOpenGLの話、NoteはGPUが違う(TAB/Nexusは PowerVR SGX系、NoteはMali-400系)から発生しないのかな…