1. 30 Aug, 2017 3 commits
  2. 29 Aug, 2017 7 commits
  3. 28 Aug, 2017 16 commits
  4. 27 Aug, 2017 1 commit
  5. 26 Aug, 2017 1 commit
  6. 25 Aug, 2017 3 commits
    • ES3.1: Implement framebuffer default parameters for d3d part. · 511937d9
      JiangYizhou authored
      Set framebuffer default params with glFramebufferParameteri and
      glGetFramebufferParameteriv, keep framebuffer default parameters
      in cache for query.
      The es 3.1 spec section 9.2 states that, "If there are no attachments
      , rendering will be limited to a rectangle having a lower left of
      (0, 0) and an upper right of (width, height), where width and height
      are the framebuffer object's default width and height."
      If the Framebuffer has no color attachment and the default width or
      height is smaller than the current viewport, use the smaller of the
      two sizes.
      
      BUG=angleproject:1594
      TEST=dEQP-GLES31.functional.state_query.framebuffer_default.framebuffer_default*
      TEST=dEQP-GLES31.functional.fbo.completeness.no_attachments
      TEST=dEQP-GLES31.functional.fbo.no_attachments.*
      TEST=angle_end2end_tests --gtest_filter=FramebufferTest_ES31.*
      
      Change-Id: I8041fd655161390acf115efa08ce0f04b10810a0
      Reviewed-on: https://chromium-review.googlesource.com/609414
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
      Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
    • ES31: Implement GL_OES_geometry_shader built-ins in GLSL compiler · d27f5c8d
      Jiawei Shao authored
      This patch intends to implement all built-in constants, variables and
      functions defined in OpenGL ES 3.1 extension GL_OES_geometry_shader
      in ANGLE GLSL compiler.
      
      1. Add all built-in constants defined in GL_OES_geometry_shader.
      2. Add built-in functions EmitVertex() and EndPrimitive() required
         in Geometry Shader.
      3. Add built-in variables gl_PrimitiveIDIn and gl_InvocationID to
         Geometry Shader.
      4. Add built-in variables gl_PrimitiveID and gl_Layer to both
         Geometry Shader and Fragment Shader when GL_OES_geometry_shader
         is enabled.
      
      BUG=angleproject:1941
      TEST=angle_unittests
      
      Change-Id: I92821553ed0efee2ccb77fead6e065e7799819d0
      Reviewed-on: https://chromium-review.googlesource.com/627670
      Commit-Queue: Corentin Wallez <cwallez@chromium.org>
      Reviewed-by: 's avatarCorentin Wallez <cwallez@chromium.org>
      Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
    • Enable all multiview rendering tests for layered framebuffers · 3c25ad07
      Martin Radev authored
      The patch restructures the tests in MultiviewDrawTests.cpp, so that
      all rendering tests can be instantiated for side-by-side and layered
      framebuffers.
      
      BUG=angleproject:2062
      TEST=angle_end2end_tests
      
      Change-Id: I2c32fd3bd57b6afd1eb8d6cedb2d1b88b9fd6525
      Reviewed-on: https://chromium-review.googlesource.com/627918
      Commit-Queue: Martin Radev <mradev@nvidia.com>
      Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
  7. 24 Aug, 2017 5 commits
  8. 23 Aug, 2017 4 commits
    • Remove IndexRange retrieving in validation · 59d9da08
      Qin Jiajia authored
      This change can improve the performance of drawElements which uses
      the path without translation.
      Paste a set of mean data (repeated 30) for reference on Intel skylake
      Win10 desktop.
      DrawElementsPerfBenchmark.Run/d3d11:
      before                     after
      mean: 13644.4666667 -> mean: 13887.8333333
      DrawElementsPerfBenchmark.Run/d3d11_index_buffer_changed:
      before                     after
      mean: 45.8          -> mean: 46.3666666667
      
      BUG=755897, angleproject:1393
      
      Change-Id: I11f5db25445346958dfef52b1d23df5483cda32f
      Reviewed-on: https://chromium-review.googlesource.com/607413Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
      Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
    • D3D11: Use dirty bits for applyVertexBuffers. · abf66fb3
      Jamie Madill authored
      If the vertex array has any dirty or dynamic attribs, we must do an
      update. Similarly, if a prior state change has left the vertex
      state invalidated, we do an update. For instance, a program change
      means we need a new input layout. If there was no such invalidation
      or dirtyness we can skip the call to InputLayoutCache.
      
      This improves the performance of the draw call benchmark (with no
      state changes) by about 50% on the D3D11 null driver. Increases the
      frames per second count of the aquarium demo with the passthrough
      command buffer by about 25% on a test machine.
      
      BUG=angleproject:1156
      
      Change-Id: I8381999029f5b1912030a3342e96285a58f95e82
      Reviewed-on: https://chromium-review.googlesource.com/616784
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
      Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
    • D3D11: Split input layout and VB application. · e3d8628d
      Jamie Madill authored
      This will enable future optimizations that only update either the
      applied vertex buffers or the input layout independenty. It also
      makes debugging a bit easier since we can force an update of the
      vertex buffer or input layout to diagnose potential state sync
      bugs.
      
      BUG=angleproject:1156
      
      Change-Id: Ib375561528da539e136ff4fd02398b03c9caabb7
      Reviewed-on: https://chromium-review.googlesource.com/627077Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
    • Add support for arrays of arrays in AST processing · 96f6adfa
      Olli Etuaho authored
      Data concerning arrays of arrays is added in TType.
      
      Parsing arrays of arrays and support for arrays of arrays in
      TPublicType are still left to be implemented later.
      
      ShaderVariable interface for arrays of arrays is also left to be
      implemented later.
      
      We rely on existing test coverage to make sure that arrays of arrays
      are not accidentally exposed.
      
      BUG=angleproject:2125
      TEST=angle_unittests, angle_end2end_tests, angle_deqp_gles31_tests
      
      Change-Id: Ie17d5ac9b8d33958e9126dc0fb40bf1c81ddeec9
      Reviewed-on: https://chromium-review.googlesource.com/616146Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
      Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>