2011-10-25 7 views
6

アルファブレンディングで5349574673ページが見つかりましたが、希望する結果が得られません。 私はgif/pngファイルを正しく表示するようにしようとしています(透明/半透明)は、OpenGLを使用しています。私はイメージが透明性を持っているし、正しくロードされていると確信していますOpenGLアルファブレンディング

glEnable(GL_TEXTURE_2D); 
glEnable(GL_BLEND); 
glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA); //I've seen this on most tutorials 
glDisable(GL_DEPTH_TEST); //it's a 2D game 
//...loading matrices and so on 

は、ここに私の初期化ビットです。
glBlendFunc(GL_ONE、GL_ONE);アルファチャンネルで何かしているのかどうかはわかりません。なぜなら、それは黒でレンダリングされるからです。=>ブレンディングの仕事
glColor4f(1f、1f、1f、0.3f);私は透明なものを描くことができます。

P.S.私は

私はGIMPや他のテクスチャローダーでエンコード作られた他のテクスチャを使用EDIT を学ぶために、この例http://lwjgl.org/wiki/index.php?title=Space_Invaders_Example_Gameを使用することだし、それは今、正常に動作します。

+0

画像を投稿してください。初期コードはOKです。 –

答えて

5

ブレンド設定が正しい。しかし、ブレンドするためには、テクスチャにアルファチャンネルが含まれていなければなりません。そして、アルファチャンネルのデータは画像読み込みプロセスによって保存されなければなりません。画像の読み込みとテクスチャの生成コードをご覧ください。

関連する問題