1. 01 Nov, 2016 1 commit
    • Ken Martin's avatar
      Remove ES2 support for VTK 8.0 · 0f750114
      Ken Martin authored
      ES2 is causing headaches and code mess and is
      getting old. Remove for 8.0 so we can focus on
      more modern APIs. Most Apple and Adroid devices
      from the past 4 years support ES3.
      0f750114
  2. 06 Oct, 2016 1 commit
  3. 04 Oct, 2016 1 commit
  4. 23 Sep, 2016 1 commit
    • Kitware Robot's avatar
      Reindent using the reindentation script. · f830ff47
      Kitware Robot authored
      This commit reindents the code with the following utility:
      Utilities/Maintenance/vtk-reindent-code.py
      
      This utility changes the positions of the braces so that they are no
      longer indented relative to the code block they reside in.
      
      The bash command line used was the following:
      
      for d in Charts Common Deprecated Domains Examples Filters GUISupport \
               Geovis IO Imaging Infovis Interaction Parallel Rendering \
               Testing Views Web Wrapping; do
        for e in cxx cxx.in txx txx.in hxx hxx.in h h.in c c.in; do
          find "${d}" -name "*.${e}" -exec \
            python Utilities/Maintenance/vtk_reindent_code.py {} +
        done
      done
      f830ff47
  5. 18 Sep, 2016 1 commit
    • Ken Martin's avatar
      Rework the CompositePolyDataMapper2 · 7912d340
      Ken Martin authored
      The old approach used a fast path for a very narrow set of
      conditions and then used a slow path for everything else.
      This approach required two sets of code,
      
      - GenericCompositePolydataMapper2
      - CompositePolyDataMapper2
      
      and had performance issues as the slow path was slower
      than OpenGL1 for some cases. This reworking consolidates
      the two approach together. The basic approach is that
      all blocks with the same VBO structure get grouped together
      and rendered as one. The number of different VBO structures is
      small so this results in a a small number of things to render.
      
      Each of those things (handled with a Helper class) gets rendered
      using its own VBO and IBOs with special code to handle the cases
      where uniforms have to be changed between blocks etc.
      
      The results are generally much faster. Some additional
      optimizations have resulted in further performance improvements.
      Generally this new class is as fast as the old fast path and
      tens to hundreds of times faster for the slow path.
      
      This class is still complex and could probably be reworked
      another three times. The complexity is largly driven by
      how complex the task is as each block can have different
      primitives, point/cell data arrays, etc.
      
      This topic adds four more tests for this class. As this
      class is the workhourse for ParaView it really needs far
      more testing in VTK. The three additional tests cover
      some use cases I know tend to cause issues.
      
      At the same time this topic changes how point picking is
      done to prevent some bad behavior. The old approach
      rendered surfaces for all passes up to the primId pass.
      The problem with that is that the point pass rendering may
      not match up with the surface rendering resulting in point
      Ids associated with incoreect composite/prop/process ids.
      It mixes two sets of data haphazzardly. Very bad. This
      topic cuases all point selection to be done by rendering
      points.
      7912d340
  6. 26 Apr, 2016 2 commits
  7. 08 Mar, 2016 1 commit
  8. 17 Feb, 2016 1 commit
    • Ken Martin's avatar
      remove glFlush calls · e473e02b
      Ken Martin authored
      These calls should not be needed but pollute the code
      and the profiling results and potentially slow down execution
      e473e02b
  9. 04 Nov, 2015 1 commit
  10. 04 Apr, 2015 1 commit
  11. 26 Jun, 2014 1 commit
  12. 24 Jun, 2014 1 commit
  13. 13 Jun, 2014 3 commits
    • Marcus D. Hanwell's avatar
      Very judicious use of sed, vtkOpenGL2* -> vtkOpenGL* · a6a584b1
      Marcus D. Hanwell authored
      This now gives us a vtkRenderingOpenGL2 that has most of the same
      classes as vtkRenderingOpenGL - the two will clobber each other's
      headers, symbols etc and so can never be built/linked at the same
      time.
      
      Unfortunately a lot of classes SafeDownCast or dynamic_cast to the
      derived OpenGL forms of the classes in vtkRenderingCore, and so
      using a different class name presented significant issues despite
      the fact that these classes are (in an ideal world) implementations
      of the API in vtkRenderingCore for OpenGL 2.1 and above.
      
      Change-Id: Ie8c6234621e550d3fd67da732d2cf4839290d665
      a6a584b1
    • Marcus D. Hanwell's avatar
      Rename vtkOpenGL2* -> vtkOpenGL* · b40b181d
      Marcus D. Hanwell authored
      Using pure renames to make things clearer to git...
      
      Change-Id: Icbf5f782179a5e511aee06e7a1fa494be0a5be26
      b40b181d
    • Marcus D. Hanwell's avatar
      Made vtkRenderingOpenGL2 independent of vtkRenderingOpenGL · 8bc98a02
      Marcus D. Hanwell authored
      This required several classes to be copied over, they may not stay.
      It also required me to port many calls from vtkgl to GLEW, and get
      rid of checks for features in OpenGL 2.1 or less. The extension
      manager has been removed, and its functionality replaced.
      
      Change-Id: I60f8858a315a0e91c175aef6152ab57d26650cb4
      8bc98a02
  14. 06 Jun, 2014 1 commit