de.grogra.ray2.tracing
public class BiDirectionalProcessor extends PathTracer
RayProcessorBase.Locals| Modifier and Type | Field and Description |
|---|---|
int |
bestLight |
int |
bestS |
int |
bestT |
static java.lang.String |
EYEPATH_DEPTH |
static java.lang.String |
HEURISTIC_FACTOR |
boolean |
isMetropolis |
static java.lang.String |
LIGHTPATH_DEPTH |
LineTracer |
lineTracer |
CausticMap |
loacalCausticMap |
TracingMediator |
tracingMediator |
BRIGHTNESSenteredSolids, RECURSION_DEPTH, renderer, scene| Constructor and Description |
|---|
BiDirectionalProcessor() |
| Modifier and Type | Method and Description |
|---|---|
protected void |
appendStatisticsImpl(java.lang.StringBuffer stats) |
void |
chooseBestPathCombination(int s,
int t,
int lightId,
Tuple3d combWeight) |
RayProcessor |
dup(Scene scene)
Returns a clone of this
RayProcessor. |
void |
getColorFromRay(Line ray,
Spectrum resp,
Color4f color,
java.util.Random random)
The main method of a ray processor.
|
void |
initialize(PixelwiseRenderer renderer,
Scene scene)
With this method the processor is initialized with the scene
and other information of a
PixelwiseRenderer. |
void |
initializeBeforeTracing(java.util.Random random)
With this method the processor is initialized with the Randomizer
actually before starting the ray tracing.
|
initLocals, mergeStatisticsgetIOR, getLightProcessor, setLightProcessor, setRecursionDepthappendStatistics, cloneequals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitappendStatisticspublic int bestLight
public int bestS
public int bestT
public static final java.lang.String EYEPATH_DEPTH
public static final java.lang.String HEURISTIC_FACTOR
public boolean isMetropolis
public static final java.lang.String LIGHTPATH_DEPTH
public LineTracer lineTracer
public CausticMap loacalCausticMap
public TracingMediator tracingMediator
protected void appendStatisticsImpl(java.lang.StringBuffer stats)
appendStatisticsImpl in class PathTracerpublic void chooseBestPathCombination(int s,
int t,
int lightId,
Tuple3d combWeight)
public RayProcessor dup(Scene scene)
RayProcessorRayProcessor.
All constant variables are copied shallowly, state variables
are newly created and copied where necessary.dup in interface RayProcessordup in class RayProcessorBasescene - duplicate of scenepublic void getColorFromRay(Line ray, Spectrum resp, Color4f color, java.util.Random random)
RayProcessorcolor for the specified ray.
color.w contains
the alpha value for the ray, the other components are
premultiplied with this alpha value.getColorFromRay in interface RayProcessorgetColorFromRay in class RayProcessorBaseray - input - calculate for this rayresp - responsivity of cameracolor - output - the calculated colorrandom - pseudorandom generatorpublic void initialize(PixelwiseRenderer renderer, Scene scene)
RayProcessorPixelwiseRenderer.initialize in interface RayProcessorinitialize in class PathTracerrenderer - the renderer which provides the needed informationscene - the scene which is renderedpublic void initializeBeforeTracing(java.util.Random random)
RayProcessorinitializeBeforeTracing in interface RayProcessorinitializeBeforeTracing in class RayProcessorBaserandom - pseudorandom generator