public class Scene
extends java.lang.Object
| Constructor and Description |
|---|
Scene()
Creates an empty scene.
|
| Modifier and Type | Method and Description |
|---|---|
void |
accumulateStats(IntersectionState state) |
void |
accumulateStats(ShadingCache cache) |
boolean |
calculatePhotons(PhotonStore map,
java.lang.String type,
int seed,
Options options)
Create a photon map as prescribed by the given
PhotonStore. |
BoundingBox |
getBounds()
Get scene world space bounding box.
|
ShadingState |
getRadiance(IntersectionState istate,
float rx,
float ry,
double lensU,
double lensV,
double time,
int instance,
int dim,
ShadingCache cache)
Get the radiance seen through a particular pixel
|
int |
getThreadPriority()
Get the priority level to assign to multi-threaded operations.
|
int |
getThreads()
Get number of allowed threads for multi-threaded operations.
|
void |
render(Options options,
ImageSampler sampler,
Display display)
Render the scene using the specified options, image sampler and display.
|
void |
setBakingInstance(Instance instance)
The provided instance will be considered for lightmap baking.
|
void |
setCamera(Camera camera)
Sets the current camera (no support for multiple cameras yet).
|
void |
setInstanceLists(Instance[] instances,
Instance[] infinite)
Update the instance lists for this scene.
|
void |
setLightList(LightSource[] lights)
Update the light list for this scene.
|
void |
setShaderOverride(Shader shader,
boolean photonOverride)
Enables shader overiding (set null to disable).
|
public int getThreads()
public int getThreadPriority()
public void setCamera(Camera camera)
camera - camera to be used as the viewpoint for the scenepublic void setInstanceLists(Instance[] instances, Instance[] infinite)
instances - regular instancesinfinite - infinite instances (no bounds)public void setLightList(LightSource[] lights)
lights - array of light source objectspublic void setShaderOverride(Shader shader, boolean photonOverride)
shader - shader to run over all surfaces, or null to
disable overridingphotonOverride - true to override photon scattering
with this shader or false to run the regular
shaderspublic void setBakingInstance(Instance instance)
null, lightmap baking will be
disabled and normal rendering will occur.instance - instance to bakepublic ShadingState getRadiance(IntersectionState istate, float rx, float ry, double lensU, double lensV, double time, int instance, int dim, ShadingCache cache)
istate - intersection state for ray tracingrx - pixel x coordinatery - pixel y coordinatelensU - DOF sampling variablelensV - DOF sampling variabletime - motion blur sampling variableinstance - QMC instance seednull if nothing is seen through the specifieFd
pointpublic BoundingBox getBounds()
public void accumulateStats(IntersectionState state)
public void accumulateStats(ShadingCache cache)
public void render(Options options, ImageSampler sampler, Display display)
options - rendering options objectsampler - image samplerdisplay - display to send the final image to, a default display will
be created if nullpublic boolean calculatePhotons(PhotonStore map, java.lang.String type, int seed, Options options)
PhotonStore.map - object that will recieve shot photonstype - type of photons being shotseed - QMC seed parametertrue upon success