espresso3d.engine.logo.particlesystems.particles
Class RedPlasmaParticle

java.lang.Object
  extended byespresso3d.engine.base.E3DEngineItem
      extended byespresso3d.engine.renderer.base.E3DRenderable
          extended byespresso3d.engine.renderer.base.E3DTexturedRenderable
              extended byespresso3d.engine.world.sector.base.E3DPortalEnabledTexturedRenderableItem
                  extended byespresso3d.engine.world.sector.particle.E3DSprite
                      extended byespresso3d.engine.world.sector.particle.E3DBillboardSprite
                          extended byespresso3d.engine.world.sector.particle.E3DParticle
                              extended byespresso3d.engine.logo.particlesystems.particles.RedPlasmaParticle
All Implemented Interfaces:
E3DCollisionDetectableObject

public class RedPlasmaParticle
extends E3DParticle

Author:
Curt The red plasma particle used in v0.2 logos particle system

Constructor Summary
RedPlasmaParticle(E3DEngine engine, E3DVector3F startPosition, E3DVector3F startMovementDirection, double velocity, double life, double startDelay, double size, boolean createLight)
           
 
Method Summary
 E3DLight getLight()
           
 boolean isCollideable()
          Return true if the collision detector should include this when checking for collisions of other objects into this.
 boolean isCollisionCausedByMovement()
          Set this to true if the particle in the system needs to cause collisions when it moves.
 void onCollisionActor(E3DCollision collision)
          Intercept collision with actor callbacks
 void onCollisionDuringUpdate(E3DCollision collision)
          This callback gets fired when the particle hits something in the world.
 void onCollisionSprite(E3DCollision collision)
          Intercept collision with sprite callbacks
 E3DParticle onGetClone()
           
 void setLight(E3DLight light)
           
 
Methods inherited from class espresso3d.engine.world.sector.particle.E3DParticle
getCurrentFrameVelocity, getCurrentMovementDirection, getEndAlpha, getLife, getLoops, getParticleSystem, getStartAlpha, getStartDelay, getStartMovementDirection, getStartPosition, getTranslationAmt, getVelocity, isAlive, renderAtPosition, rotate, rotateMovementDirection, setCurrentMovementDirection, setEndAlpha, setLife, setLoops, setStartAlpha, setStartDelay, setStartMovementDirection, setStartPosition, setVelocity, translate
 
Methods inherited from class espresso3d.engine.world.sector.particle.E3DBillboardSprite
isLockX, isLockY, isLockZ, setLockX, setLockY, setLockZ, update
 
Methods inherited from class espresso3d.engine.world.sector.particle.E3DSprite
getBoundingObject, getForward, getPosition, getQuad, getSize, getTriangleList, getUniqueVertexList, getUp, scale, setPosition, setQuad
 
Methods inherited from class espresso3d.engine.world.sector.base.E3DPortalEnabledTexturedRenderableItem
checkSectorChangeDuringMovement, getSector, setSector
 
Methods inherited from class espresso3d.engine.renderer.base.E3DTexturedRenderable
getGlTextureID, getTextureName, setGlTextureID, setTextureName
 
Methods inherited from class espresso3d.engine.renderer.base.E3DRenderable
render
 
Methods inherited from class espresso3d.engine.base.E3DEngineItem
getEngine, setEngine
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface espresso3d.engine.collision.base.E3DCollisionDetectableObject
getEngine, getSector
 

Constructor Detail

RedPlasmaParticle

public RedPlasmaParticle(E3DEngine engine,
                         E3DVector3F startPosition,
                         E3DVector3F startMovementDirection,
                         double velocity,
                         double life,
                         double startDelay,
                         double size,
                         boolean createLight)
Method Detail

onCollisionActor

public void onCollisionActor(E3DCollision collision)
Description copied from class: E3DParticle
Intercept collision with actor callbacks

Specified by:
onCollisionActor in interface E3DCollisionDetectableObject
Specified by:
onCollisionActor in class E3DParticle

onCollisionSprite

public void onCollisionSprite(E3DCollision collision)
Description copied from class: E3DParticle
Intercept collision with sprite callbacks

Specified by:
onCollisionSprite in interface E3DCollisionDetectableObject
Specified by:
onCollisionSprite in class E3DParticle

onCollisionDuringUpdate

public void onCollisionDuringUpdate(E3DCollision collision)
Description copied from class: E3DParticle
This callback gets fired when the particle hits something in the world. Actors don't have this callback, but particles do since they're movement is done automatically by the engine

Specified by:
onCollisionDuringUpdate in class E3DParticle
Parameters:
collision -

onGetClone

public E3DParticle onGetClone()
                       throws java.lang.Exception
Specified by:
onGetClone in class E3DParticle
Throws:
java.lang.Exception

isCollideable

public boolean isCollideable()
Description copied from interface: E3DCollisionDetectableObject
Return true if the collision detector should include this when checking for collisions of other objects into this. Otherwise, false and it will be ignored in other object's collision detection This does not automatically make this stop causing collisions with their own movement (in all cases except particles, this can only be triggered by the user). it just keeps the object from being run into by other object's movement.

Returns:

isCollisionCausedByMovement

public boolean isCollisionCausedByMovement()
Description copied from class: E3DParticle
Set this to true if the particle in the system needs to cause collisions when it moves. If set to false, it will not cause any collision callbacks to be hit when it moves. This must also be set to true in the particle's particle system (A false setting in the particle system overrides this setting). This does not automatically make it uncollideable. It just keeps itself from causing collisions with its own movement. Other objects movement can still run into this particle if isCollideable is set to true for the particle and particle system.

Specified by:
isCollisionCausedByMovement in class E3DParticle
Returns:

getLight

public E3DLight getLight()

setLight

public void setLight(E3DLight light)