Results 1 to 3 of 3

Thread: FBO with shared texture

  1. #1
    Junior Member
    Join Date
    Aug 2010
    Posts
    2

    FBO with shared texture

    Hi, I'm working on accelerating 2D vector graphics using OpenGL ES.
    You can think that of CairoGL, QPainterGL, SkiaGL.

    Our off-screen rendering surface should meet following conditions.
    1. Support OpenGL ES rendering
    2. Can be bound to OpenGL ES texture with zero copy overhead
    3. Render target switch must be fast
    4. Support multi-thread OpenGL ES rendering

    What can be render target of OpenGL ES are...
    - EGL Window, PBuffer, NativePixmap Surface
    - FBO

    For off-screen rendering, candidates are PBuffer, FBO.

    PBuffer
    - Render : eglCreateContext and then eglMakeCurrent
    - Texture : eglBindTexture

    FBO
    - Render : FBO
    - Texture : glBindTexture

    PBuffer meets condition 1,2, 4 but not 3
    So I tested some example for FBO.

    1. There is one EGL context per thread.
    2. All EGL context is shared.
    3. There are one compositor thread and several client thread.
    4. Create textures from context of compositor thread.
    5. Each client thread generate FBO and attach texture(from compositor thread) to it.
    6. Each client thread renders something on that texture.
    7. Compositor thread map the textures on 3D geometry periodically.

    In step 5, glCheckFramebufferStatus report errors.
    I concluded that textures which are shared across multiple contexts cannot be bound to FBO.
    Thus, FBO meets condition 1, 2, 3 but not 4
    Is this true?
    Does anyone have better idea on this problem?

    Please help me
    Thank you!!

  2. #2
    Junior Member
    Join Date
    Aug 2010
    Posts
    2

    Re: FBO with shared texture

    I'm working on OpenGL ES 2.0 and EGL 1.4

  3. #3
    Senior Member
    Join Date
    May 2008
    Posts
    100

    Re: FBO with shared texture

    The EGL image extensions can provide an efficient zero copy solution cross process solution, but it would only work on platforms which support the extension.

    The IMG SGX stack supports all the EGL image extensions, so if you're targeting SGX platforms, I'd strongly suggest taking a peek at the extension spec. The extension does require some OS specific bits to be implemented in order to make use of the extension, so you should also ensure your targeted OS properly implements the extension as well.

    -Joel

Similar Threads

  1. Replies: 13
    Last Post: 10-15-2012, 11:06 PM
  2. Texture atlas for objects with shared vertexes.
    By unparagoned in forum OpenGL ES general technical discussions
    Replies: 3
    Last Post: 04-03-2009, 10:09 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •