com.threerings.opengl.scene.config
Class ShadowConfig

java.lang.Object
  extended by com.threerings.util.DeepObject
      extended by com.threerings.opengl.scene.config.ShadowConfig
All Implemented Interfaces:
Exportable, Copyable, Cloneable
Direct Known Subclasses:
ShadowConfig.SilhouetteTexture

@EditorTypes(value=ShadowConfig.SilhouetteTexture.class)
public abstract class ShadowConfig
extends DeepObject
implements Exportable

Represents a means of generating shadows from a light.


Nested Class Summary
static class ShadowConfig.Data
          A simple container for several state elements shared between the updater and the dependency.
static class ShadowConfig.SilhouetteTexture
          Generates shadows by rendering the silhouettes of shadow casters from the perspective of the light into a texture and projecting that texture onto shadow receivers.
static class ShadowConfig.TextureData
          A simple container for several state elements shared between the updater and the dependency.
 
Constructor Summary
ShadowConfig()
           
 
Method Summary
abstract  SceneInfluence createInfluence(GlContext ctx, Scope scope, LightConfig lightConfig, Light viewLight, ArrayList<Updater> updaters)
          Creates the scene influence corresponding to this config.
protected static String getProjectionScheme(Light.Type type)
          Returns the render scheme to use for the projection of the specified light type.
 
Methods inherited from class com.threerings.util.DeepObject
clone, copy, copy, equals, hashCode, toString
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ShadowConfig

public ShadowConfig()
Method Detail

createInfluence

public abstract SceneInfluence createInfluence(GlContext ctx,
                                               Scope scope,
                                               LightConfig lightConfig,
                                               Light viewLight,
                                               ArrayList<Updater> updaters)
Creates the scene influence corresponding to this config.

Parameters:
updaters - a list to populate with required updaters.

getProjectionScheme

protected static String getProjectionScheme(Light.Type type)
Returns the render scheme to use for the projection of the specified light type.