Addendum: The extension also does not define a formative section on what identifiers it adds to shaders.An example of how that works is contained there: https://www.khronos.org/registry/webgl/extensions/ EXT_shader_texture_lod/ Overview
When this extension is enabled:
- ...
- ...
- ...
On Tue, Jan 10, 2017 at 9:12 AM, Florian Bösch <pyalot@gmail.com> wrote:The extension adds the following:
- FRAMEBUFFER_ATTACHMENT_TEXTURE
_NUM_VIEWS_OVR accepted by getFramebufferAttachmentParame ter - FRAMEBUFFER_ATTACHMENT_TEXTURE
_BASE_VIEW_INDEX_OVR accepted by getFramebufferAttachmentParame ter - MAX_VIEWS_OVR accepted by getParameter
- FRAMEBUFFER_INCOMPLETE_VIEW_TA
RGETS_OVR accepted by checkFramebufferStatus - BACK_LEFT_AND_RIGHT_MULTIVIEW_
WEBGL accepted by drawBuffer - framebufferTextureMultiviewWEB
GL(...) - context creation parameter "stereo"
- gl.drawBuffer
- gl.BACK_LEFT
- gl.BACK_RIGHT
- layout qualifier to specify the number of views a shader renders
There are some issues with that extension:
- The enums BACK_LEFT and BACK_RIGHT are added to the WebGLRenderingContextBase instead of the extension objects IDL
- the function drawBuffer which does not exist in WebGL is added to the WebGLRenderingContextBase instead of the extension objects IDL
- The relationship between WebGL2 gl.drawBuffers and this extensions drawBuffer is unclear
- The layout qualifier is not WebGL1 compatible, and the extension does not define WebGL1 usable gl_NumViews constant or the like
- The extension does not contain a differentiation between WebGL1 and WebGL2, but those need to be 2 specifications, so either there's two extensions needed, or this extension needs to define differing functionality in different sections for both WebGL1 and WebGL2
- The examples section is insufficient, examples should be added for context creation and back buffer use, framebuffer object use and selection of traditional or stereo view rendering.
- Since this extension is meant to interact with the WebVR specification, and the WebVR specification so far requires the application to render to the back buffer in split-view, the interaction with WebVR is unclear and should be clarified