Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8103124

Add better diagnostic and debug tools for dirty regions, culling, and overdraw

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Fixed
    • Icon: P4 P4
    • 8
    • 8
    • javafx

      This issue encompasses a few things. First, we need a printout which shows the different culling bits, opaque regions, render roots, etc. This helps to determine why things are being rendered, etc. Example:

      *=Render Root
      d=Dirty
      dt=Dirty By Translation
      i=Dirty Region Intersects the NGNode
      c=Dirty Region Contains the NGNode
      ef=Effect Filter
      cf=Cache Filter
      cl=This node is a clip node
      b=Blend mode is set
      or=Opaque Region
      ensemble.EnsembleApp$1 [*0 *1 i0 ci1 or=0.0, 0.0, 1024.0, 768.0]
        PageBrowser [i0 ci1]
          HomePage id=HomePage [i0 ci1 or=0.0, 44.0, 1024.0, 724.0]
            VirtualFlow id=virtual-flow [i0 ci1]
        MenuBar [or=0.0, 0.0, 1024.0, 0.0]
          HBox

      Second, we should fix the showDirtyRegions so that it doesn't render the entire scene every time

      Third, we should add a mode to draw overdraw rectangles to indicate how many times a specific part of the scene has been drawn. Ultimately we'd want this to be pixel perfect and completely accurate (basically we should record every time any pixel shader touches a specific pixel), but for now a simple rectangle based approximation will work.

            rbair Richard Bair (Inactive)
            rbair Richard Bair (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported: