Class MultipassRenderer

  • All Implemented Interfaces:
    ImageSampler

    public class MultipassRenderer
    extends java.lang.Object
    implements ImageSampler
    • Field Detail

      • scene

        private Scene scene
      • imageWidth

        private int imageWidth
      • imageHeight

        private int imageHeight
      • bucketOrderName

        private java.lang.String bucketOrderName
      • bucketSize

        private int bucketSize
      • bucketCounter

        private int bucketCounter
      • bucketCoords

        private int[] bucketCoords
      • numSamples

        private int numSamples
      • invNumSamples

        private float invNumSamples
      • shadingCache

        private boolean shadingCache
    • Constructor Detail

      • MultipassRenderer

        public MultipassRenderer()
    • Method Detail

      • prepare

        public boolean prepare​(Options options,
                               Scene scene,
                               int w,
                               int h)
        Description copied from interface: ImageSampler
        Prepare the sampler for rendering an image of w x h pixels
        Specified by:
        prepare in interface ImageSampler
        w - width of the image
        h - height of the image
      • render

        public void render​(Display display)
        Description copied from interface: ImageSampler
        Render the image to the specified display. The sampler can assume the display has been opened and that it will be closed after the method returns.
        Specified by:
        render in interface ImageSampler
        Parameters:
        display - Display driver to send image data to
      • warpTent

        private static final float warpTent​(float x)
        Tent filter warping function.
        Parameters:
        x - sample in the [0,1) range
        Returns:
        warped sample in the [-1,+1) range
      • warpCubic

        private static final double warpCubic​(double x)
        Cubic BSpline warping functions. Formulas from: "Generation of Stratified Samples for B-Spline Pixel Filtering" http://www.cs.utah.edu/~mstark/papers/
        Parameters:
        x - samples in the [0,1) range
        Returns:
        warped sample in the [-2,+2) range
      • qpow

        private static final double qpow​(double x)
      • distb1

        private static final double distb1​(double x)