私はOpenGL ES 2.0でAndroidアプリを開発しており、GL_EXT_shader_framebuffer_fetchの拡張子を使用したいと思います。AndroidでOpenGL拡張GL_EXT_shader_framebuffer_fetchを有効にするにはどうすればよいですか?
私が理解しているところでは、フラグメントシャドウの先頭にある#extension
ディレクティブでまず有効にしてから、組み込み変数gl_LastFragData
を使用することができます。
Couldn't compile shader: Fragment shader compilation failed.
ERROR: 0:1: '' : GLSL error: extension 'GL_EXT_shader_framebuffer_fetch' is not supported
ERROR: 1 compilation errors. No code generated.
誤差はかなり明示的である:私はシェーダをコンパイルするとき、私は次のコンパイルエラーを取得し、しかし
#extension GL_EXT_shader_framebuffer_fetch : require
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ <- Enable the extension
varying highp vec2 textureCoords;
uniform sampler2D currentTexture;
void main()
{
vec4 currentColor = texture2D(currentTexture, textureCoords);
gl_FragColor = currentColor;
}
:この拡張機能があるので、ここで
は私のフラグメントシェーダでありますnotをサポートしています。
私の技術仕様:
- ハードウェア:5.0.1
- のAndroid APIレベル:21
- OpenGLのバージョン(AndroidのバージョンサムスンギャラクシーS4
glGetString(GL_VERSION)
):OpenGL ES 3.0 [email protected] AU @(CL @
私はいくつかの質問を持っている:
- は私が私のデバイス上でこの拡張機能をインストールに何かできることはありますか?
- そうでない場合は、エミュレータにインストールするか、それを使用できますか?
- ソフトウェア問題か実際にはハードウェアに問題がありますか?