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

Scene can be rendered multiple times if depth buffer and dirty regions are enabled

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Not an Issue
    • Icon: P3 P3
    • 8
    • 8
    • javafx

      This code in ViewPainter can cause the scene to be rendered multiple times:


                  for (int i = 0; i < dirtyRegionContainer.size(); i++) {

      // <snipped>

                          // Disable occlusion culling if depth buffer is enabled for the scene.
                          if (sceneState.getScene().getDepthBuffer()) {
                              doPaint(g, null);
                          } else {
                              doPaint(g, root.getRenderRoot(NODE_PATH, dirtyRegion, i, tx, projTx));
                              NODE_PATH.clear();
                          }
                      }
                  }

      The line doPaint(g, null) should never be called more than once in ViewPainter. The check for getDepthBuffer() can be made once, outside the for loop.

            pchelko Petr Pchelko (Inactive)
            dblaukop Daniel Blaukopf (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported: