1. 07 Nov, 2016 1 commit
  2. 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:
      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 {} +
  3. 19 Aug, 2016 1 commit
    • Bill Lorensen's avatar
      ENH: Introduce vtkMTimeType · 9333d9d1
      Bill Lorensen authored
      This is a fix for:
      Windows applications that run for a long time report that rendered
      objects do not change. This is because the modified time on a Windows
      system is 32 bits. This causes overflows that defeat the modified time
      mechanism. This patch defines a new type, vtkMTimeType that is 64
      unsigned integer regardless of the architecture.
      A mechanism to provide backward compatibility is introduced. The
      preprocessor define "VTK_HAS_MTIME_TYPE" can be used in applications
      that must build against VTK versions that use the "unsigned long" type
      for MTime's.
      Methodology used to find MTime occurences:
      1) Identify files as follows:
         git grep "unsigned long" | grep ime | cut -d":" -f1,1 | sort | uniq
      2) Hand edit each of those files replacing "unsigned long" with
         "vtkMTimeType" where appropriate.
      3) Temporarily change typedef for vtkMTimeType to "double" to detect
         missing conversions
  4. 17 Aug, 2016 1 commit
    • David C. Lonie's avatar
      Remove early returns in vtkDualDepthPeelingPass for osx. · 2a248f0d
      David C. Lonie authored
      Restructured the fragment shader for the peeling pass to avoid early
      returns. Apparently the new OSX driver rearranges instructions such that
      the early returns occurred before dFdx and dFdy in the normal computation.
      This lead to garbage normals and incorrect shading.
  5. 11 Aug, 2016 1 commit
    • David C. Lonie's avatar
      Add Depth stage to polydata fragment shaders. · 101f9eeb
      David C. Lonie authored
      The depth peelers currently assume gl_FragCoord.z is always the depth,
      but the imposter shaders in Domains/Chemistry modify the depth.
      This patch adds a //VTK::Depth::Impl hook into the fragment shader
      template, before any depth peeling processing is applied. The depth
      is stored into gl_FragDepth, and all depth processing now uses this
      variable instead of gl_FragCoord.z.
  6. 09 Aug, 2016 1 commit
  7. 15 Jul, 2016 1 commit
  8. 07 Jul, 2016 1 commit
  9. 27 Jun, 2016 1 commit
    • David C. Lonie's avatar
      Correct DualDepthPeeling for RGBA targets. · 53561216
      David C. Lonie authored
      The final blending pass had assumed that the target buffer was RGB,
      not RGBA.
      The new implementation correctly computes the final alpha values of
      the blended opaque and translucent layers.
  10. 21 Apr, 2016 1 commit
    • David C. Lonie's avatar
      Modify DDP occlusion queries for OGL ES 3.0. · 28326553
      David C. Lonie authored
      ES 3.0 only supports the ANY_SAMPLES_PASSED query, so use that instead.
      We ignore the occlusion ratio in this case, and instead will only
      abort early if all fragments pass (essentially acting as though
      OcclusionRatio == 0.).
  11. 18 Apr, 2016 3 commits
  12. 11 Apr, 2016 1 commit
    • David C. Lonie's avatar
      Add vtkDualDepthPeelingPass. · 19d945f7
      David C. Lonie authored
      This implements a new depth peeling algorithm that peels layers of
      fragments from both the front and back of the translucent geometry at
      This also introduces vtkOpenGLRenderPass, which provides a virtual API
      that allows custom shader code replacements without the need to edit
      all mappers.
      The older vtkDepthPeelingPass has been updated to use the new
      vtkOpenGLRenderPass API, and is left in VTK as a fallback for drivers
      that lack support for the dual peeling features (floating point textures
      in particular).