2012-04-10 8 views
0

私は、単一の色(アルファベット(255,255,255)など)のアルファを0に設定したいテクスチャを持っています。Open GL ESテクスチャ:透明な色を設定する||アルファの色を0にする

私は現在この呼び出しを使用しています

glBindTexture(GL_TEXTURE_2D, self.texture.name); 
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, GL_BGRA, GL_UNSIGNED_BYTE, baseAddress); 

テクスチャは完全に表示されます。これはcocos2dのCCTexture2Dです。あなたが私を助けることを願っています。

答えて

0

OpenGLコマンドでこれを行う方法はありません。シェーダを使用して特定の色のピクセルをフィルタリングするか、画素データをbaseAddressにピクセル単位で変更してからglTexImage2Dにアップロードする必要があります。

+0

はシェイダーと完全に機能します。ありがとうございました! – Max

+1

シェイダーを使用してこれを行う方法を教えてください。私はOpenGlを初めて使っているので、助けていただければ幸いです。Thx – Sandra

1

イムない私はこのことを理解している場合必ず、私は、OpenGLにかなり新しいですが、私はあなただけの1色が透明になりたいと思うあなたはオーバー

gl.glblendfuncを使用して1 transeparentを作る2つのテクスチャを築くことができません

boolean SEE_THRU = true; 
if (SEE_THRU) { 
gl.glDisable(GL10.GL_DEPTH_TEST); 
gl.glEnable(GL10.GL_BLEND); 
gl.glBlendFunc(GL10.GL_SRC_ALPHA, GL10.GL_ONE); 
} 
関連する問題