ShapeBaseData Struct Reference

#include <shapeBase.h>

Inheritance diagram for ShapeBaseData:

Inheritance graph
[legend]
List of all members.

HUD

Note:
This may be only semi-functional.


enum  { NumHudRenderImages = 8 }
StringTableEntry hudImageNameFriendly [NumHudRenderImages]
StringTableEntry hudImageNameEnemy [NumHudRenderImages]
bool hudRenderCenter [NumHudRenderImages]
bool hudRenderModulated [NumHudRenderImages]
bool hudRenderAlways [NumHudRenderImages]
bool hudRenderDistance [NumHudRenderImages]
bool hudRenderName [NumHudRenderImages]

Infrastructure

The derived class should provide the following:

 DECLARE_CONOBJECT (ShapeBaseData)
 ShapeBaseData ()
 ~ShapeBaseData ()
virtual void packData (BitStream *stream)
virtual void unpackData (BitStream *stream)
static void initPersistFields ()
 Register dynamic fields in a subclass of ConsoleObject.

Destruction

Everyone likes to blow things up!

DebrisDatadebris
S32 debrisID
StringTableEntry debrisShapeName
Resource< TSShapedebrisShape
ExplosionDataexplosion
S32 explosionID
ExplosionDataunderwaterExplosion
S32 underwaterExplosionID

Physical Properties

F32 mass
F32 drag
F32 density
F32 maxEnergy
F32 maxDamage
F32 repairRate
 Rate per tick.
F32 disabledLevel
F32 destroyedLevel
S32 shieldEffectLifetimeMS

3rd Person Camera

F32 cameraMaxDist
 Maximum distance from eye.
F32 cameraMinDist
 Minumumistance from eye.

Camera FOV

These are specified in degrees.

F32 cameraDefaultFov
 Default FOV.
F32 cameraMinFov
 Min FOV allowed.
F32 cameraMaxFov
 Max FOV allowed.

Data initialized on preload

Resource< TSShapemShape
 Shape handle.
U32 mCRC
bool computeCRC
S32 eyeNode
 Shape's eye node index.
S32 cameraNode
 Shape's camera node index.
S32 mountPointNode [NumMountPoints]
 Node index of mountPoint.
S32 debrisDetail
 Detail level used to generate debris.
S32 damageSequence
 Damage level decals.
S32 hulkSequence
 Destroyed hulk.
bool canControl
bool canObserve
bool observeThroughObject

Collision Data

Vector< S32collisionDetails
 Detail level used to collide with.
Vector< Box3FcollisionBounds
 Detail level bounding boxes.
Vector< S32LOSDetails
 Detail level used to perform line-of-sight queries against.

Misc. Settings

bool emap
 Enable environment mapping?
bool firstPersonOnly
 Do we allow only first person view of this image?
bool useEyePoint
 Do we use this object's eye point to view from?
bool aiAvoidThis
 If set, the AI's will try to walk around this object.
bool isInvincible
 If set, object cannot take damage (won't show up with damage bar either).
bool renderWhenDestroyed
 If set, will not render this object when destroyed.
bool inheritEnergyFromMount

Public Types

 NumMountPoints = 32
 NumMountPointBits = 5
 MaxCollisionShapes = 8
 AIRepairNode = 31
 NumHudRenderImages = 8
enum  Constants {
  NumMountPoints = 32,
  NumMountPointBits = 5,
  MaxCollisionShapes = 8,
  AIRepairNode = 31
}
 Various constants relating to the ShapeBaseData. More...

Public Member Functions

bool preload (bool server, String &errorStr)
 Called to prepare the datablock for use, after it has been unpacked.
void computeAccelerator (U32 i)
S32 findMountPoint (U32 n)

Public Attributes

bool shadowEnable
bool shadowCanMove
bool shadowCanAnimate
bool shadowSelfShadow
U32 shadowSize
U32 shadowAnimationFrameSkip
F32 shadowMaxVisibleDistance
F32 shadowProjectionDistance
F32 shadowSphereAdjust
F32 shadowBias
bool shadowDTSShadow
F32 shadowIntensity
StringTableEntry shapeName
StringTableEntry cloakTexName
bool dynamicReflection

Private Types

typedef GameBaseData Parent

Member Typedef Documentation


Member Enumeration Documentation

Various constants relating to the ShapeBaseData.

Enumerator:
NumMountPoints 
NumMountPointBits 
MaxCollisionShapes 
AIRepairNode 

Reimplemented in PlayerData, and WheeledVehicleData.

anonymous enum

Enumerator:
NumHudRenderImages 


Constructor & Destructor Documentation

ShapeBaseData::ShapeBaseData (  ) 

ShapeBaseData::~ShapeBaseData (  ) 


Member Function Documentation

bool ShapeBaseData::preload ( bool  server,
String errorStr 
) [virtual]

Called to prepare the datablock for use, after it has been unpacked.

Parameters:
server Set if we're running on the server (and therefore don't need to load things like textures or sounds).
errorStr If an error occurs in loading, this is set to a short string describing the error.
Returns:
True if all went well; false if something failed.
See also:
preload() and File Downloading

Reimplemented from GameBaseData.

Reimplemented in PlayerData, RigidShapeData, FlyingVehicleData, HoverVehicleData, VehicleData, and WheeledVehicleData.

void ShapeBaseData::computeAccelerator ( U32  i  ) 

S32 ShapeBaseData::findMountPoint ( U32  n  ) 

ShapeBaseData::DECLARE_CONOBJECT ( ShapeBaseData   ) 

static void ShapeBaseData::initPersistFields (  )  [static]

virtual void ShapeBaseData::packData ( BitStream stream  )  [virtual]

virtual void ShapeBaseData::unpackData ( BitStream stream  )  [virtual]


Member Data Documentation

Maximum distance from eye.

Minumumistance from eye.

Min FOV allowed.

Max FOV allowed.

Shape's eye node index.

Shape's camera node index.

Node index of mountPoint.

Detail level used to generate debris.

Damage level decals.

bool ShapeBaseData::hudRenderCenter[NumHudRenderImages]

bool ShapeBaseData::hudRenderAlways[NumHudRenderImages]

bool ShapeBaseData::hudRenderName[NumHudRenderImages]

Detail level used to collide with.

These are detail IDs, see TSShape::findDetail()

Detail level bounding boxes.

Detail level used to perform line-of-sight queries against.

These are detail IDs, see TSShape::findDetail()

Enable environment mapping?

Do we allow only first person view of this image?

Do we use this object's eye point to view from?

If set, the AI's will try to walk around this object.

..

Note:
There isn't really any AI code that can take advantage of this.

If set, object cannot take damage (won't show up with damage bar either).

If set, will not render this object when destroyed.