1. 18 Feb, 2016 4 commits
  2. 17 Feb, 2016 2 commits
  3. 12 Feb, 2016 1 commit
  4. 10 Feb, 2016 15 commits
  5. 09 Feb, 2016 1 commit
  6. 08 Feb, 2016 8 commits
  7. 06 Feb, 2016 1 commit
  8. 05 Feb, 2016 2 commits
  9. 04 Feb, 2016 2 commits
    • Fixed binding offsets for uniform and transform feedback buffers · 78696bf0
      Alexis Hetu authored
      There was some confusion between buffer mapping and size and offset
      buffer binding arguments, which are distinct, but were represented
      by the same Buffer class members. Added OffsetBindingPointer to solve
      the issue and removed setOffset/setSize from the Buffer class, which
      should not have existed in the first place (only the mapRange/unmap
      functions should be allowed to modify these values, for now).
      
      Change-Id: Iacecd17cfb90d0a229d9edf62a463c8acf31f07a
      Reviewed-on: https://swiftshader-review.googlesource.com/4590Tested-by: 's avatarAlexis Hétu <sugoi@google.com>
      Reviewed-by: 's avatarNicolas Capens <capn@google.com>
    • Uniform block declaration · 150f597a
      Alexis Hetu authored
      A few aspects of block declaration are improved upon here:
      - Block definitions are computed and stored for later use.
        The data stored are the block member types and a map to
        convert from register offsets, based on the internal
        memory layout, to the std140 layout.
      - Declaration of block members is possible. When a block
        member is declared prior to the entire block being
        declared, OutputASM::declareUniform() will first declare
        the whole block and return the index of the block member.
        If the block member is part of an already defined block,
        the function declares no new variables and returns the
        block member's register index.
      
      Change-Id: If1368bc8de20a0f86169361d76858c3f3e34bb07
      Reviewed-on: https://swiftshader-review.googlesource.com/4632Tested-by: 's avatarAlexis Hétu <sugoi@google.com>
      Reviewed-by: 's avatarNicolas Capens <capn@google.com>
  10. 03 Feb, 2016 1 commit
  11. 02 Feb, 2016 2 commits
  12. 01 Feb, 2016 1 commit
    • Passing uniform buffers to the vertex/pixel programs · 2c2a7b29
      Alexis Hetu authored
      This cl contains the necessary changes to make uniform buffers
      usable in shaders. A few things to note:
      - Uniform buffers can be set, but nothing will attempt to access
        them in this cl.
      - While the 'index' of uniforms is expressed in terms of registers,
        uniform buffer 'index' is expressed in bytes in both PixelProgram
        and VertexProgram. This is necessary because of packing which can
        potentially put some variables in the middle of registers.
        Technically, std140 always packs variables in multiples of byte4,
        but other future layouts may not, so using bytes as the unit is
        more future proof.
      - The above mentioned 'index' will have to be computed in OutputASM
        and extra operations will need to be added (to fetch a row from a
        row major matrix, for example).
      
      Change-Id: I636cc4bdc6fe90d6f5697e735f4288f48d18a75b
      Reviewed-on: https://swiftshader-review.googlesource.com/4151Tested-by: 's avatarAlexis Hétu <sugoi@google.com>
      Reviewed-by: 's avatarNicolas Capens <capn@google.com>