Module raytracer

Class StochasticSupersampling

java.lang.Object
de.grogra.ray.antialiasing.StochasticSupersampling
All Implemented Interfaces:
Antialiasing

public class StochasticSupersampling extends Object implements Antialiasing
This class implements a stochastical antialiasing algorithm. For every pixel frustum there will be N2 generated random rays that are inside the frustum. For all random rays the color value is determined and will be combined as average. To have a better distribution the original pixel is first divided into N x N subpixels. For every subpixel one random ray is generated.
Author:
Micha
  • Constructor Details

    • StochasticSupersampling

      public StochasticSupersampling()
  • Method Details

    • initialize

      public void initialize(RTCamera camera, RayProcessor processor)
      Description copied from interface: Antialiasing
      Initializes the antialiasing method and sets the camera and ray processor object that has to be used.
      Specified by:
      initialize in interface Antialiasing
      Parameters:
      camera - sets the camera object that has to be used for the antialiasing class.
      processor - sets the ray processor object that has to be used for the antialiasing class.
    • getColorFromFrustum

      public void getColorFromFrustum(double x, double y, double width, double height, Color4f color)
      Description copied from interface: Antialiasing
      This method has to return a color value determined for a given pixel frustum. A pixel frustum is a sub frustum of the view frustum that encloses exactly a special pixel of the image. The pixel frustum is indirectly described by describing the related pixel.
      Specified by:
      getColorFromFrustum in interface Antialiasing
      Parameters:
      x - Describes the relative x position of the top left corner of the pixel. It can range from -1 to +1.
      y - Describes the relative y position of the top left corner of the pixel. It can range from -1 to +1.
      width - Describes the relative width of the of the pixel. It can range from 0 to +2.
      height - Describes the relative height of the of the pixel. It can range from 0 to +2.
      color - The determined color for the pixel frustum will be saved in this parameter. So this parameter will be changed!