Class BoundsManager

java.lang.Object
icyllis.arc3d.granite.geom.BoundsManager
Direct Known Subclasses:
FullBoundsManager, GridBoundsManager, HybridBoundsManager, SimpleBoundsManager

public abstract class BoundsManager extends Object
BoundsManager is an acceleration structure for device-space related pixel bounds queries. The BoundsManager tracks a single ordinal value per bounds: the CompressedPaintersOrder of a draw The CompressedPaintersOrder enforces a specific submission order of draws to the GPU but can re-arrange draws out of their original painter's order if the GREATER depth test and the draw's Z value resolve out-of-order rendering.

It supports querying the most recent draw intersecting a bounding rect (represented as a CompressedPaintersOrder value), and recording a (bounds, CompressedPaintersOrder) pair.

  • Constructor Details

    • BoundsManager

      public BoundsManager()
  • Method Details

    • getMostRecentDraw

      public abstract int getMostRecentDraw(Rect2fc bounds)
    • recordDraw

      public abstract void recordDraw(Rect2fc bounds, int order)
    • clear

      public abstract void clear()