非常に単純な2Dの正方形があり、テクスチャからゲームのスプライトをレンダリングします。テクスチャで透明にする必要がある領域が黒でレンダリングされることを除いて、これはすべて非常にうまく機能します。これらの透明な領域をレンダリングして、正方形の背後にあるオブジェクト(この場合は背景)を表示するにはどうすればよいですか?
関連する場合は、単純なフラグメントシェーダーを次に示します。
uniform sampler2D uTexture;
varying vec2 vImagePosition;
void main(){
gl_FragColor = texture2D(uTexture, vImagePosition);
}
そして頂点シェーダー:
attribute vec4 aPosition;
attribute vec2 aImagePosition;
uniform mat4 uMVPMatrix;
varying vec2 vImagePosition;
void main(){
gl_Position = uMVPMatrix*aPosition;
vImagePosition = aImagePosition;
}