de.grogra.imp3d.shading
public class AlgorithmSwitchShader extends SwitchShader
| Modifier and Type | Class and Description |
|---|---|
static class |
AlgorithmSwitchShader.Type |
| Modifier and Type | Field and Description |
|---|---|
static AlgorithmSwitchShader.Type |
$TYPE |
static SCOType.Field |
guiShader$FIELD |
static SCOType.Field |
radiationShader$FIELD |
static SCOType.Field |
raytracerShader$FIELD |
LAMBERTIAN_VARIANCEDELTA_FACTOR, IS_NON_OPAQUE, MIN_UNUSED_FLAG, NEEDS_NORMAL, NEEDS_POINT, NEEDS_TANGENTS, NEEDS_TRANSFORMATION, NEEDS_UV, RANDOM_RAYS_GENERATE_ORIGINS| Constructor and Description |
|---|
AlgorithmSwitchShader() |
AlgorithmSwitchShader(Shader guiShader,
Shader radiationShader) |
AlgorithmSwitchShader(Shader guiShader,
Shader raytracerShader,
Shader radiationShader) |
| Modifier and Type | Method and Description |
|---|---|
void |
accept(ShaderVisitor visitor) |
int |
getAverageColor()
Returns an average color for the scattering entity.
|
int |
getFlags() |
Shader |
getGUIShader() |
ManageableType |
getManageableType() |
Shader |
getRadiationShader() |
Shader |
getRaytracerShader() |
protected Shader |
getShaderFor(Environment env,
Vector3f in)
This method has to be implemented by subclasses and defines the
actual shader which shall be used depending on the environment
and the ray direction.
|
boolean |
isTransparent() |
void |
setGuiShader(Shader value) |
void |
setGUIShader(Shader value) |
void |
setRadiationShader(Shader value) |
void |
setRaytracerShader(Shader value) |
computeBSDF, computeMaxRays, generateRandomRays, shade, transformEnvironmentaddReference, appendReferencesTo, fieldModified, getProvider, getStamp, initProvider, manageableReadResolve, manageableWriteReplace, removeReferencepublic static final AlgorithmSwitchShader.Type $TYPE
public static final SCOType.Field guiShader$FIELD
public static final SCOType.Field radiationShader$FIELD
public static final SCOType.Field raytracerShader$FIELD
public void accept(ShaderVisitor visitor)
public int getAverageColor()
Scatteringpublic int getFlags()
public Shader getGUIShader()
public ManageableType getManageableType()
public Shader getRadiationShader()
public Shader getRaytracerShader()
protected Shader getShaderFor(Environment env, Vector3f in)
SwitchShadergetShaderFor in class SwitchShaderenv - environment for which shading computations are to be performedin - given ray directionpublic boolean isTransparent()
isTransparent in interface ShaderisTransparent in class SwitchShaderpublic void setGuiShader(Shader value)
public void setGUIShader(Shader value)
public void setRadiationShader(Shader value)
public void setRaytracerShader(Shader value)