我正在爲Android應用程序的OpenGL ES 2.0。我有一個模型,其中 我應用紋理。我通過使用下面的着色器來做到這一點。它是一個簡單的着色器。透明度GLSL Android的OpenGL ES 2.0的
在下面的着色器時,紋理文件是透明的一些地方,我收到了 黑色。相反,我想找到透明的地方,並給出像RGB(0.6,0.7,0.3)這樣的特定顏色。請讓我知道如何修改下面的着色器,以在我的模型中獲取此着色器。
protected static final String mVShader =
"uniform mat4 uMVPMatrix;\n" +
"attribute vec4 aPosition;\n" +
"attribute vec2 aTextureCoord;\n" +
"varying vec2 vTextureCoord;\n" +
"void main() {\n" +
" gl_Position = uMVPMatrix * aPosition;\n" +
" vTextureCoord = aTextureCoord;\n" +
"}\n";
protected static final String mFShader =
"precision mediump float;\n" +
"varying vec2 vTextureCoord;\n" +
"uniform sampler2D uTexture0;\n" +
"void main() {\n" +
" gl_FragColor = texture2D(uTexture0, vTextureCoord);\n" +
"}\n";
你是如何定義的地方「時,紋理文件是透明的」?你的意思是有一個零的阿爾法?你不能只在這些點上把特定的顏色加入到紋理中嗎? –
是的,我的意思是阿爾法是零。但我想在那個地方放上不同的顏色。所以我想通過代碼來完成。請讓我知道您的意見。 – Vinodtiru