com.threerings.opengl.effect
Class ParticleSystem.Layer

java.lang.Object
  extended by com.threerings.expr.SimpleScope
      extended by com.threerings.opengl.effect.BaseParticleSystem.Layer
          extended by com.threerings.opengl.effect.ParticleSystem.Layer
All Implemented Interfaces:
Scope, ScopeUpdateListener, Enqueueable
Enclosing class:
ParticleSystem

public static class ParticleSystem.Layer
extends BaseParticleSystem.Layer
implements Enqueueable

A single layer of the system.


Field Summary
protected  Vector3f _center
          The layer center.
protected  boolean _ownTransformState
          Whether or not we're using a transform state of our own (as opposed to inheriting).
protected  Surface _surface
          The layer surface.
protected  TransformState _transformState
          The shared transform state.
 
Fields inherited from class com.threerings.opengl.effect.BaseParticleSystem.Layer
_bounds, _colorState, _completed, _config, _counter, _ctx, _geometryRadius, _influences, _living, _parentBounds, _parentViewTransform, _parentWorldTransform, _particles, _placer, _preliving, _shooter, _total, _worldTransform, _worldTransformInv, _wrot
 
Fields inherited from class com.threerings.expr.SimpleScope
_parentScope
 
Fields inherited from interface com.threerings.expr.Scope
EPOCH, NOW
 
Constructor Summary
ParticleSystem.Layer(GlContext ctx, Scope parentScope, BaseParticleSystemConfig.Layer config)
          Creates a new layer.
 
Method Summary
protected  void addBounds()
          Adds this layer's bounds to those of its parent.
 void composite()
          Composites the layer for rendering.
 void dispose()
          Releases the resources associated with this scope.
 void enqueue()
          Enqueues this object for rendering.
protected  void initParticle(int idx)
          Initializes the particle at the specified index.
 void setConfig(BaseParticleSystemConfig.Layer config)
          Sets the layer's config.
 
Methods inherited from class com.threerings.opengl.effect.BaseParticleSystem.Layer
drawBounds, getCamera, getConfig, getScopeName, pointToLayer, reset, rotationToLayer, swapParticles, tick, vectorToLayer
 
Methods inherited from class com.threerings.expr.SimpleScope
addListener, get, getParentScope, removeListener, scopeUpdated
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_transformState

@Scoped
protected TransformState _transformState
The shared transform state.


_center

@Scoped
protected Vector3f _center
The layer center.


_surface

protected Surface _surface
The layer surface.


_ownTransformState

protected boolean _ownTransformState
Whether or not we're using a transform state of our own (as opposed to inheriting).

Constructor Detail

ParticleSystem.Layer

public ParticleSystem.Layer(GlContext ctx,
                            Scope parentScope,
                            BaseParticleSystemConfig.Layer config)
Creates a new layer.

Method Detail

enqueue

public void enqueue()
Description copied from interface: Enqueueable
Enqueues this object for rendering.

Specified by:
enqueue in interface Enqueueable

setConfig

public void setConfig(BaseParticleSystemConfig.Layer config)
Description copied from class: BaseParticleSystem.Layer
Sets the layer's config.

Overrides:
setConfig in class BaseParticleSystem.Layer

composite

public void composite()
Description copied from class: BaseParticleSystem.Layer
Composites the layer for rendering.

Specified by:
composite in class BaseParticleSystem.Layer

dispose

public void dispose()
Description copied from class: SimpleScope
Releases the resources associated with this scope.

Overrides:
dispose in class SimpleScope

initParticle

protected void initParticle(int idx)
Description copied from class: BaseParticleSystem.Layer
Initializes the particle at the specified index.

Overrides:
initParticle in class BaseParticleSystem.Layer

addBounds

protected void addBounds()
Description copied from class: BaseParticleSystem.Layer
Adds this layer's bounds to those of its parent.

Overrides:
addBounds in class BaseParticleSystem.Layer