• Show log

    Commit

  • Hash : 4cc89e2b
    Author : Jiawei Shao
    Date : 2017-08-31T14:25:54

    ES31: Enable 'location' layout qualifier on shader interfaces in compiler
    
    This patch enables 'location' layout qualifier for vertex outputs and
    fragment shader inputs when the shader version is 3.1 in ANGLE GLSL
    compiler and adds the check on location conflicts for these varyings.
    
    According to GLSL ES 3.1 SPEC (Chapter 4.4.1 and Chapter 4.4.2),
    'location' layout qualifier is allowed on both inputs and outputs of
    vertex and fragment shaders.
    
    'location' layout qualifier on shader interfaces is only valid on shaders
    whose version is 3.1 and above. According to GLSL ES 3.0 SPEC, vertex shader
    cannot have output layout qualifiers (Chapter 4.3.8.2) and fragment shader
    cannot have input layout qualifiers (Chapter 4.3.8.1).
    
    The 'location' qualifier on varyings is used in the shader interface
    matching defined in OpenGL ES 3.1. (OpenGL ES 3.1 SPEC Chapter 7.4.1). This
    new link rule will be added to Program.cpp in another patch.
    
    For the OpenGL ES 3.1 extension GL_OES_geometry_shader, according to
    GL_OES_shader_io_blocks SPEC (Chapter 4.4.1 and Chapter 4.4.2), 'location'
    layout qualifier is both valid on geometry shader inputs and outputs. This
    feature will be implemented together with other rules on geometry shader
    inputs and outputs.
    
    BUG=angleproject:2144
    TEST=angle_unittests
    
    Change-Id: I62d85f7144c177448321c2db36ed7aaeaa1fb205
    Reviewed-on: https://chromium-review.googlesource.com/645366
    Commit-Queue: Geoff Lang <geofflang@chromium.org>
    Reviewed-by: Geoff Lang <geofflang@chromium.org>
    

  • Properties

  • Git HTTP https://git.kmx.io/kc3-lang/angle.git
    Git SSH git@git.kmx.io:kc3-lang/angle.git
    Public access ? public
    Description

    A conformant OpenGL ES implementation for Windows, Mac, Linux, iOS and Android.

    Homepage

    Github

    Users
    thodg_m kc3_lang_org thodg_w www_kmx_io thodg thodg_l
    Tags