2011-07-03 8 views
0

OpenGLES 1.0からOpenGLES 2.0へのアプリケーションの変換中です。いくつかのテクスチャ(毎回同じものから複数のテクスチャ)が有用なものの代わりに黒くレンダリングされています。これらの画像は小さな画像(約32x32)で、アルファチャンネルのPNG形式ですが、類似の画像がきちんと読み込まれているので、それ自体は固有のものではありません。Android GLUtils.texImage2Dは、OpenGLES 2.0シェーダを使用しているときに黒いテクスチャを生成します。

私はGLUtils.texImage2Dにそれらの画像で1280エラーを返すように絞り込みましたが、なぜそれが問題を引き起こすべきかわかりません。

誰にもなぜこれが起こっている可能性があると示唆できますか? GLES20.glTexImage2Dを手動で(それが何であれ)使用することは適切でしょうか?

答えて

4

私は同様の問題を抱えていたし、使用して自分の画像をロードすることで、それを解決:

BitmapFactory.decodeResource(context.getResources(), R.drawable.resourceName) 

の代わりに、サンプル(私の推測では、これはあなたが現在持っているものである)からコード:

InputStream is = mContext.getResources() 
     .openRawResource(R.raw.robot); 
    Bitmap bitmap; 
    try { 
     bitmap = BitmapFactory.decodeStream(is); 
    } finally { 
     try { 
      is.close(); 
     } catch(IOException e) { 
      // Ignore. 
     } 
    } 
+0

私はそれが私がやったことだと思っています - 現時点では仕事から離れていますが、私が戻ってきたら、必要ならばこれをチェックして正しいとマークします。 – batterj2

+0

フォローアップ:はい、元のバージョンが動作しなかった場合のフェールセーフとしてこれを使用しました。 – batterj2

関連する問題