1. 10 Feb, 2013 2 commits
  2. 08 Feb, 2013 4 commits
  3. 07 Feb, 2013 4 commits
  4. 06 Feb, 2013 1 commit
  5. 05 Feb, 2013 1 commit
  6. 04 Feb, 2013 3 commits
    • Henry Song's avatar
      gl: do not force flush everytime uploading a glyph image to glyph cache · 4cb181d9
      Henry Song authored
      In normal cases, we want to flush pending operations reading from the
      texture before modifying its contents.  However during uploading of
      glyphs into the glyph cache, we repeatedly modify the texture as we
      construct the vbo (whilst referencing it for that operation). We track
      unused areas in the glyph cache so that if we run out of space, we can
      explicitly flush the pending glyphs and start afresh and avoid having to
      flush the operation in common case.
      4cb181d9
    • Chris Wilson's avatar
      gl: Include the vertex ident in the shader cache hash · 260c1633
      Chris Wilson authored
      As we may specialise the vertex program depending upon details of the
      fragment shader, and may have more than one program for the same
      combination of fragment sources, we need to include the vertex tag in
      the cache entry.
      Signed-off-by: Chris Wilson's avatarChris Wilson <chris@chris-wilson.co.uk>
      260c1633
    • Chris Wilson's avatar
      gl: Replace manual vertex transformation with VS computation of texcoords · 05ad89f9
      Chris Wilson authored
      Not only is our point transformation code is quite slow (well at least
      compared to a real GPU), but by deriving the texture coordinates from
      the vertex position we can elide the multiple arrays that we need to
      construct and pass to GL - improving performance by eliminating CPU
      overhead from needless transforms and data shovelling.
      
      However, not all vertex emission is suitable. For instance, for glyphs
      we need to emit discontiguous texture coordinates for each glyph, but
      span generation is suitable - which fortuitously also has the largest
      vertex density and so benefits the most.
      
      The only real concern is for hardware without true vertex shader support
      (e.g. i915) but there we are already invoking the VS to transform the
      vertex into the viewport. We would need to eliminate that transform as
      well as manually compute the texture coordinates in order to eliminate
      the vertex recomputation pass.
      Signed-off-by: Chris Wilson's avatarChris Wilson <chris@chris-wilson.co.uk>
      05ad89f9
  7. 03 Feb, 2013 1 commit
  8. 02 Feb, 2013 2 commits
  9. 01 Feb, 2013 1 commit
  10. 31 Jan, 2013 6 commits
  11. 29 Jan, 2013 12 commits
  12. 28 Jan, 2013 1 commit
  13. 27 Jan, 2013 2 commits