OpenGL ES glGenTextures返回值爲0

最近在Android的一個項目要用到OpenGL ES,自己對於圖形引擎這塊又不瞭解,頂多就是看過點DirectX,不過也是挺久以前的了,早忘完了。

想着這下完了,肯定又得掉坑。

坑確實多,不過大部分網上都有解決,就是剛剛碰到個需要重新載入模型的情況下,本應顯示人物立繪的畫面只有一堆白框框。

一步步調試看看發現是因爲重新載入的過程中,生成紋理標識號的glGenTextures返回老是0,弄了半天,其實是因爲glGenTextures的調用只能在GLThread中進行,就是繼承Renderer時重寫的那仨函數onSurfaceCreated、onSurfaceCreated、onDrawFrame,把需要調用glGenTextures的部分寫在這三個函數裏就好了。我是因爲把重寫載入模型的邏輯整個寫在了主線程中才出現了上述的問題的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章