BlamKiwi / angleproject

Automatically exported from code.google.com/p/angleproject
Other
0 stars 0 forks source link

ESSL3 validator should support inout storage qualifier if GL_EXT_shader_framebuffer_fetch is supported #843

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
This is a followup to 
https://code.google.com/p/angleproject/issues/detail?id=834.

Extension: 
https://www.khronos.org/registry/gles/extensions/EXT/EXT_shader_framebuffer_fetc
h.txt

For fragment shaders only, and only if GL_EXT_shader_framebuffer_fetch is 
supported, it's allowed to have an 'inout' storage specifier for the fragment 
shader:

  #version 300 es
  #extension GL_EXT_shader_framebuffer_fetch : require
  layout(location = 0) inout mediump vec4 dstColor;
  ...

The above currently causes a syntax error due to 'inout' not being supported by 
the validator. I added that as a quick hack, but got another error about the 
layout location being wrong (in TParseContext::layoutLocationErrorCheck), and 
I'm not sure about the current state of the validator there.

Original issue reported on code.google.com by e...@opera.com on 28 Nov 2014 at 1:09

GoogleCodeExporter commented 9 years ago
ESSL 3 support is incomplete. Maybe Nicolas would know if we had partial inout 
support?

Original comment by jmad...@chromium.org on 28 Nov 2014 at 4:16