net.sf.tankbattles.scene.map
Class BattleFieldNode

java.lang.Object
  extended by com.jme.scene.SceneElement
      extended by com.jme.scene.Spatial
          extended by com.jme.scene.Node
              extended by net.sf.tankbattles.scene.map.BattleFieldNode
All Implemented Interfaces:
com.jme.util.export.Savable, java.io.Serializable

public class BattleFieldNode
extends com.jme.scene.Node

The scene graph node for the battlefield. Includes the visual and physics nodes for the terrain and obstacles. This version is based on a single jME TerrainBlock, since the battlefields tend to be small.

Author:
erickpassos
See Also:
Serialized Form

Field Summary
 
Fields inherited from class com.jme.scene.SceneElement
COMPOSITE_MESH, CULL_ALWAYS, CULL_DYNAMIC, CULL_INHERIT, CULL_NEVER, GEOMBATCH, GEOMETRY, LOCKED_BOUNDS, LOCKED_BRANCH, LOCKED_MESH_DATA, LOCKED_NONE, LOCKED_SHADOWS, LOCKED_TRANSFORMS, NM_GL_NORMALIZE_IF_SCALED, NM_GL_NORMALIZE_PROVIDED, NM_INHERIT, NM_OFF, NM_USE_PROVIDED, NODE, QUADBATCH, queueDistance, SHARED_MESH, SHAREDBATCH, SKY_BOX, TERRAIN_BLOCK, TERRAIN_PAGE, TRIANGLEBATCH, TRIMESH
 
Constructor Summary
BattleFieldNode(BattleField battlefield, com.jmex.physics.PhysicsSpace pSpace)
          Constructor for initializing a battlefield, based on a mission configuration.
 
Method Summary
 com.jmex.terrain.TerrainBlock getTerrainBlock()
           
 
Methods inherited from class com.jme.scene.Node
attachChild, attachChildAt, batchChange, detachAllChildren, detachChild, detachChildAt, detachChildNamed, draw, findCollisions, findPick, getChild, getChild, getChildIndex, getChildren, getQuantity, getTriangleCount, getType, getVertexCount, hasChild, hasCollision, lockBounds, lockMeshes, lockShadows, lockTransforms, read, setModelBound, swapChildren, unlockBounds, unlockMeshes, unlockShadows, unlockTransforms, updateModelBound, updateWorldBound, updateWorldData, write
 
Methods inherited from class com.jme.scene.Spatial
addController, calculateCollisions, calculatePick, getController, getControllers, getCullMode, getLightCombineMode, getLocalRotation, getLocalScale, getLocalTranslation, getNormalsMode, getParent, getRenderQueueMode, getTextureCombineMode, getUserData, getWorldRotation, getWorldScale, getWorldTranslation, localToWorld, lookAt, onDraw, propagateBoundToRoot, propagateStatesFromRoot, removeController, removeController, removeFromParent, removeUserData, rotateUpTo, setLocalRotation, setLocalRotation, setLocalScale, setLocalScale, setLocalTranslation, setLocalTranslation, setUserData, setZOrder, updateGeometricState, updateWorldVectors, worldToLocal
 
Methods inherited from class com.jme.scene.SceneElement
clearRenderState, getClassTag, getLastFrustumIntersection, getLocalCullMode, getLocalLightCombineMode, getLocalNormalsMode, getLocalRenderQueueMode, getLocalTextureCombineMode, getLocks, getName, getRenderState, getWorldBound, getZOrder, isCollidable, lock, lock, lockBranch, lockMeshes, setCullMode, setIsCollidable, setLastFrustumIntersection, setLightCombineMode, setLocks, setLocks, setName, setNormalsMode, setRenderQueueMode, setRenderState, setTextureCombineMode, setZOrder, toString, unlock, unlock, unlockBranch, unlockMeshes, updateRenderState
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.jme.util.export.Savable
getClassTag
 

Constructor Detail

BattleFieldNode

public BattleFieldNode(BattleField battlefield,
                       com.jmex.physics.PhysicsSpace pSpace)
Constructor for initializing a battlefield, based on a mission configuration. First creates a jME TerrainBlock based on a heightmap and then generates its physics representation. Needs a BattleField configuration object and a PhysicsSpace. The battlefield brings the heightmap and the collection of obstacles. The PhysicsSpace is used to initialize the battlefield static mesh (terrain) and the static and dynamic obstacles.

Parameters:
battlefield - the configuration object.
pSpace - the jMEPhysics2 ODE space for creating static and dynamic nodes.
Method Detail

getTerrainBlock

public com.jmex.terrain.TerrainBlock getTerrainBlock()