microsoft / angle

ANGLE: OpenGL ES to DirectX translation
Other
615 stars 166 forks source link

GLES 3 supported? #100

Closed kircher1 closed 7 years ago

kircher1 commented 7 years ago

Is ES 3 supported with ANGLE nuget package v2.1.11? eglCreateContext is failing when I try to specify a client version of "3".

const EGLint contextAttributes[] =
{
    EGL_CONTEXT_CLIENT_VERSION, 3,
    EGL_NONE
};

// ....

mContext = eglCreateContext(mDisplay, config, EGL_NO_CONTEXT, contextAttributes);
if (mContext == EGL_NO_CONTEXT)
{
    Ensures("Failed to create EGL context" && false);
}
sakrist commented 7 years ago

I think your issue resolved here, https://github.com/Microsoft/angle/issues/91

kircher1 commented 7 years ago

Thanks, that seems to work...

Per the bug, will rendering to the back buffer be supported for GL3? As pointed out in the docs, having to perform an additional full screen pass to mirror the buffer is not great for perf on lower end devices.

austinkinross commented 7 years ago

Hi there! This should be working in ANGLE NuGet package v2.1.11, which we published on Sept 25th. We didn't support this in v2.1.10, which was the latest version at the time issue #91 was resolved.

If I create a new project using the VS Cross-Platform OpenGL ES template, then I can successfully create a 3.0 context using NuGet package v2.1.11.

Could you confirm that you are using v2.1.11, and if so, could you share your full EGL initialization code?

Thanks!

kircher1 commented 7 years ago

Thanks Austin. It's working for me now without disabling the back buffer optimization. Not sure what changed though. I am pretty sure the NuGet package was already v2.1.11.