GL_STENCIL_INDEX8 and glRenderbufferStorage on Intel Android image.

GL_STENCIL_INDEX8 and glRenderbufferStorage on Intel Android image.

Bild des Benutzers harism

Hi,

Firstly, thanks for great OpenGL ES 2.0 support on Intel Atom Android system image - it's been very helpful. But it seems so that using a stencil buffer attachment on texture renderbuffers "ruin" the whole texture. This happens on OSX 10.8.1 using both ICS and JB images. On other screenshot I have GL_STENCIL_INDEX8 render buffer attached and other one doesn't.

In Java the difference is following lines;

// Generate stencil buffer.
if (genStencilBuffer) {
    GLES20.glGenRenderbuffers(1, handle, 0);
    mStencilBufferHandle = handle[0];
    GLES20.glBindRenderbuffer(GLES20.GL_RENDERBUFFER, mStencilBufferHandle);
    GLES20.glRenderbufferStorage(GLES20.GL_RENDERBUFFER,
        GLES20.GL_STENCIL_INDEX8, width, height);
    GLES20.glFramebufferRenderbuffer(GLES20.GL_FRAMEBUFFER,
        GLES20.GL_STENCIL_ATTACHMENT, GLES20.GL_RENDERBUFFER, mStencilBufferHandle);
}

--
H

4 Beiträge / 0 neu
Letzter Beitrag
Nähere Informationen zur Compiler-Optimierung finden Sie in unserem Optimierungshinweis.
Bild des Benutzers hernan-alijo (Intel)

Hi Harism, do you observe the same issue in the ARM emulator? This information will help in debugging.

Bild des Benutzers harism

Hi,

Unfortunately, AFAIK, Google provided ARM emulator does not support OpenGL ES 2.0 and though I've been using Intel Atom images only. Or maybe I've simply missed some required flags but I'm getting an "No configs match configSpec" -exception if I try setting context client version to 2. On devices this ought to work ok though, at least on my own SGS2, plus I haven't received any reports from Google Play Market.

If it's any help application, or live wallpaper to be more precise, I used to take screenshots from is open source and full source code can be found here (I can implement simpler use case too if needed);

https://github.com/harism/android_wallpaper_flier



Line 128 on FlierRenderer.java sets up render target and changing it to mFlierFbo.init(width, height, 1, true, false) disables stencil buffer. I've noticed same behaviour on applications too when I was implementing stencil shadows and wanted to do rendering into offscreen buffer. Using Intel Atom image that is.

--
H

Bild des Benutzers harism

Ah, now that I tried Google ARM image again I got it to work with OpenGL ES 2.0. And yes, I see similar behaviour on it too. So I went on and submitted a bug on Android bug central ; http://code.google.com/p/android/issues/detail?id=38132 .

Melden Sie sich an, um einen Kommentar zu hinterlassen.