com.threerings.opengl.effect.config
Class BaseParticleSystemConfig.Layer

java.lang.Object
  extended by com.threerings.util.DeepObject
      extended by com.threerings.opengl.effect.config.BaseParticleSystemConfig.Layer
All Implemented Interfaces:
Exportable, Copyable, Cloneable
Direct Known Subclasses:
MetaParticleSystemConfig.Layer, ParticleSystemConfig.Layer
Enclosing class:
BaseParticleSystemConfig

public abstract static class BaseParticleSystemConfig.Layer
extends DeepObject
implements Exportable

A single layer of the system.


Field Summary
 AlphaMode alphaMode
          Determines how colors are modified according to their alpha values.
 VectorVariable angularVelocity
          Controls the particles' initial angular velocities.
 ColorFunctionVariable color
          Controls the particles' change of color over their lifespans.
 CounterConfig counter
          Controls the number of particles emitted at each frame.
 BaseParticleSystemConfig.Layer identity
          Used to identify the layer after customization.
 InfluenceConfig[] influences
          The layer's influences.
 FloatVariable lifespan
          Controls the particles' lifespans.
 boolean moveParticlesWithEmitter
          Whether or not to move particles with the emitter.
 String name
          The name of the layer.
 QuaternionVariable orientation
          Controls the particles' initial orientations.
 int particleCount
          The particle count.
 PlacerConfig placer
          Controls the particles' initial positions.
 boolean respawnDeadParticles
          Whether or not to respawn dead particles.
 boolean rotateOrientationsWithEmitter
          Whether or not to rotate the particles' initial orientations with the emitter.
 boolean rotateVelocitiesWithEmitter
          Whether or not to rotate the velocities with the emitter.
 ShooterConfig shooter
          Controls the particles' initial directions.
 FloatFunctionVariable size
          Controls the particles' change of size over their lifespans.
 FloatVariable speed
          Controls the particles' initial speeds.
 float startTime
          The time at which to start the layer.
 float timeScale
          The layer's speed multiplier.
 Transform3D transform
          The emitter transform.
 boolean visible
          Whether or not the layer is visible.
 
Constructor Summary
BaseParticleSystemConfig.Layer()
           
 
Method Summary
 void readFields(Importer in)
          Custom read method.
abstract  boolean shouldRotateOrientations()
          Checks whether we should rotate the orientations and angular velocities (because the alignment is fixed rather than billboard, etc.)
 void writeFields(Exporter out)
          Custom write method.
 
Methods inherited from class com.threerings.util.DeepObject
clone, copy, copy, equals, hashCode, toString
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

name

@Editable(column=true)
public String name
The name of the layer.


visible

@Editable(column=true)
public boolean visible
Whether or not the layer is visible.


particleCount

@Editable(category="appearance",
          weight=1.0,
          min=0.0)
public int particleCount
The particle count.


alphaMode

@Editable(category="appearance",
          weight=2.0)
public AlphaMode alphaMode
Determines how colors are modified according to their alpha values.


color

@Editable(category="appearance",
          weight=3.0,
          mode="alpha")
public ColorFunctionVariable color
Controls the particles' change of color over their lifespans.


size

@Editable(category="appearance",
          weight=3.0,
          min=0.0,
          step=0.01)
public FloatFunctionVariable size
Controls the particles' change of size over their lifespans.


transform

@Editable(category="origin",
          mode="rigid",
          step=0.01)
public Transform3D transform
The emitter transform.


placer

@Editable(category="origin")
public PlacerConfig placer
Controls the particles' initial positions.


orientation

@Editable(category="origin")
public QuaternionVariable orientation
Controls the particles' initial orientations.


rotateOrientationsWithEmitter

@Editable(category="origin")
public transient boolean rotateOrientationsWithEmitter
Whether or not to rotate the particles' initial orientations with the emitter.


moveParticlesWithEmitter

@Editable(category="origin")
public boolean moveParticlesWithEmitter
Whether or not to move particles with the emitter.


shooter

@Editable(category="emission")
public ShooterConfig shooter
Controls the particles' initial directions.


speed

@Editable(category="emission",
          min=0.0,
          step=0.01)
public FloatVariable speed
Controls the particles' initial speeds.


angularVelocity

@Editable(category="emission",
          scale=0.017453292519943295)
public VectorVariable angularVelocity
Controls the particles' initial angular velocities.


rotateVelocitiesWithEmitter

@Editable(category="emission")
public boolean rotateVelocitiesWithEmitter
Whether or not to rotate the velocities with the emitter.


counter

@Editable(category="flow")
public CounterConfig counter
Controls the number of particles emitted at each frame.


respawnDeadParticles

@Editable(category="flow")
public boolean respawnDeadParticles
Whether or not to respawn dead particles.


lifespan

@Editable(category="world",
          min=0.0,
          step=0.01)
public FloatVariable lifespan
Controls the particles' lifespans.


startTime

@Editable(category="world",
          min=0.0,
          step=0.01)
public float startTime
The time at which to start the layer.


timeScale

@Editable(category="world",
          min=0.0,
          step=0.01)
public float timeScale
The layer's speed multiplier.


influences

@Editable(category="influences")
public InfluenceConfig[] influences
The layer's influences.


identity

@Shallow
public transient BaseParticleSystemConfig.Layer identity
Used to identify the layer after customization.

Constructor Detail

BaseParticleSystemConfig.Layer

public BaseParticleSystemConfig.Layer()
Method Detail

shouldRotateOrientations

public abstract boolean shouldRotateOrientations()
Checks whether we should rotate the orientations and angular velocities (because the alignment is fixed rather than billboard, etc.)


writeFields

public void writeFields(Exporter out)
                 throws IOException
Custom write method.

Throws:
IOException

readFields

public void readFields(Importer in)
                throws IOException
Custom read method.

Throws:
IOException


Copyright © 2011. All Rights Reserved.