1. 23 Oct, 2017 3 commits
  2. 22 Oct, 2017 2 commits
    • Add more complete NULL driver for the GL back-end. · 6d94f064
      Jamie Madill authored
      This implements a NULL driver in OpenGL by stubbing out most of the
      GL functions in FunctionsGL except a few static "Gets" that are needed
      for initialization with Chromium and the tests. It is intended to be
      used for performance testing ONLY and will not have correct behaviour.
      
      It also adds a define to enable conditionally excluding the null entry
      points for implementations that wish to save on a bit of binary size.
      
      Also fixes some of the typedefs in functionsgl_typesdefs.h that were
      turned up after implementing the direct assignment from NULL stub
      entry point, generated from gl.xml, to the function pointer with type
      defined from functionsgl_typedefs.h.
      
      BUG=angleproject:2188
      
      Change-Id: Ifa1e4739cb471ab6b52a4bf24c16d9eb4b334ac5
      Reviewed-on: https://chromium-review.googlesource.com/727530
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
      Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
    • Add an auto-generated dispatch table for GL bindings. · 29ddcc99
      Jamie Madill authored
      This will more easily allow us to extend our implementation to make a
      NULL or "stub" set of bindings. It also exposes a lot more function
      permutations via extension variations.
      
      It might improve the loading speed for bindings obtained via
      extensions. Instead of generating a list every time an extension is
      checked, we use a single std::set for a fast query. However because
      more extensions are checked for more entry points, it might not make
      a huge difference.
      
      This also fixes an issue where the "real" ANGLE GL headers were being
      propagated to the entry point dispatch table definitions, instead of
      being in a totally isolated file. This patch adds the missing typedefs
      to our proxy headers.
      
      It also fixes the naming of a few entry points which was inconsistent
      with the spec. It also makes an XML adjustment to GL_NV_path_rendering
      to accomodate a hole in the spec where glLoadMatrixfEXT was not ever
      defined in OpenGL ES. A spec oddity with the TexStorage extension is
      not resolved - in this case, some methods are only exposed if other
      extensions are present, but this information is missing from gl.xml.
      
      BUG=angleproject:2188
      
      Change-Id: I0fd61dd32de6fadd55fa6bd79295833392d51104
      Reviewed-on: https://chromium-review.googlesource.com/726949
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
      Reviewed-by: 's avatarYuly Novikov <ynovikov@chromium.org>
  3. 21 Oct, 2017 1 commit
    • Vulkan: Implement basic uniforms. · 76e471e9
      Jamie Madill authored
      This implementation adds one descriptor set with two bindings: one for
      default vertex uniforms and the other for fragment. It adds two
      corresponding uniform buffers, and the logic for updating the
      descriptor sets bound to Vulkan. It doesn't handle much in the way of
      synchronization and dependency management, or uniform update.
      
      If there are only vertex or fragment uniforms the empty uniform buffer
      is omitted from the descriptor set. If both are missing, there is no
      descriptor set bound.
      
      Note that as our implementation progresses we might not be able to
      initialize our descriptor sets at link time, due to streaming in
      uniform data.
      
      BUG=angleproject:2167
      
      Change-Id: I4ce4c3879ab454114df43bfac8d87ddf817fc045
      Reviewed-on: https://chromium-review.googlesource.com/706340
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
      Reviewed-by: 's avatarYuly Novikov <ynovikov@chromium.org>
  4. 20 Oct, 2017 4 commits
  5. 19 Oct, 2017 4 commits
  6. 18 Oct, 2017 6 commits
  7. 17 Oct, 2017 8 commits
  8. 16 Oct, 2017 3 commits
  9. 15 Oct, 2017 1 commit
  10. 13 Oct, 2017 5 commits
  11. 12 Oct, 2017 3 commits