2015-03-26 1 views
0

On crée un eglContext avec:Partage EGL Contextes OpenGL ES WRT

EGLContext eglCreateContext( EGLDisplay display, 
EGLConfig config, 
EGLContext share_context, 
EGLint const * attrib_list); 

La spécification permet de spécifier un share_context qui permet le partage d'objets entre les deux contexte.

Si l'on spécifie un share_context, qu'est-ce qui est exactement partagé (programmes, textures, objets framebuffer)? et que reste-t-il exactement du bac à sable?

Est-ce que ce partage fonctionne dans les deux sens ou dans un seul sens?

+0

Tout sauf le support complet (c'est-à-dire non bugué) est très spécifique à l'appareil. Vous devrez tester. –

Répondre

1

Une extraction de spécification OGL ES 2.0.25 (Annexe C: objets partagés et multiples): Contextes

La liste des actions d'un contexte est le groupe de tous les contextes qui objets partagent avec ce contexte. Les objets pouvant être partagés entre les contextes de la liste de partage incluent les objets de tampon de vertex, les objets de programme et de shader, les objets renderbuffer et les objets de texture (à l'exception des objets de texture nommés zéro). Il n'est pas défini si les objets framebuffer sont partagés par les contextes de la liste de partage. L'espace de noms de l'objet framebuffer peut ou non être partagé. Cela signifie que l'utilisation du même nom pour un objet framebuffer dans plusieurs contextes de la liste de partage peut aboutir à plusieurs objets framebuffer distincts ou dans un seul objet framebuffer partagé. Par conséquent, les applications utilisant OpenGL ES doivent éviter d'utiliser le même nom d'objet framebuffer dans plusieurs contextes de la même liste de partage.