TSStatic

Engine/source/T3D/tsStatic.h

A simple mesh shape with optional ambient animation.

More...

Private Types

enum
MaskBits {
  TransformMask = Parent::NextFreeMask << 0
  AdvancedStaticOptionsMask = Parent::NextFreeMask << 1
  UpdateCollisionMask = Parent::NextFreeMask << 2
  SkinMask = Parent::NextFreeFlag << 3
  NextFreeMask = Parent::NextFreeMask << 4
}
Parent 

Public Types

enum
MeshType {
  None = 0
  Bounds = 1
  CollisionMesh = 2
  VisibleMesh = 3
}

The different types of mesh data types.

Private Static Attributes

Protected Attributes

The type of mesh data to return for collision queries.

The type of mesh data to return for decal polylist queries.

bool

If true each submesh within the TSShape is culled against the object space frustum.

bool

If true the shape is sorted by the origin of the model instead of the nearest point of the bounds.

Public Functions

The type of mesh data use for collision queries.

Called after any property of the object is changed in the world editor.

onMount(SceneObject * obj, S32 node)

Callback when this object is mounted.

Called when the size of the object changes.

onUnmount(SceneObject * obj, S32 node)

Callback when this object is unmounted.

packUpdate(NetConnection * conn, U32 mask, BitStream * stream)

Instructs this object to pack its state for transfer over the network.

Called when the SceneManager is ready for the registration of render instances.

setAlphaFade(bool enable, F32 start, F32 end, bool inverse)
setSkinName(const char * name)

Sets the Object -> World transform.

Instructs this object to read state data previously packed with packUpdate.

Protected Functions

bool

Start or stop processing ticks depending on our state.

Advances simulation time for animations.

buildConvex(const Box3F & box, Convex * convex)

Builds a convex hull for this object.

bool
buildPolyList(PolyListContext context, AbstractPolyList * polyList, const Box3F & box, const SphereF & sphere)

Builds a list of polygons which intersect a bounding volume.

bool
castRay(const Point3F & start, const Point3F & end, RayInfo * info)

Casts a ray and obtain collision information, returns true if RayInfo is modified.

bool

Casts a ray against rendered geometry, returns true if RayInfo is modified.

Interpolates between tick events.

bool

Called when the object is added to the sim.

Called when the object is removed from the sim.

Processes a move event and updates object state once every 32 milliseconds.

Public Static Functions

const char *
_getFieldSkin(void * object, const char * data)
bool
_setFieldSkin(void * object, const char * index, const char * data)

Detailed Description

A simple mesh shape with optional ambient animation.

Private Types

MaskBits

Enumerator

TransformMask = Parent::NextFreeMask << 0
AdvancedStaticOptionsMask = Parent::NextFreeMask << 1
UpdateCollisionMask = Parent::NextFreeMask << 2
SkinMask = Parent::NextFreeFlag << 3
NextFreeMask = Parent::NextFreeMask << 4
typedef SceneObject Parent 

Public Types

MeshType

Enumerator

None = 0

No mesh.

Bounds = 1

Bounding box of the shape.

CollisionMesh = 2

Specifically designated collision meshes.

VisibleMesh = 3

Rendered mesh polygons.

The different types of mesh data types.

Private Static Attributes

U32 smUniqueIdentifier 

Protected Attributes

U32 cubeDescId 
String cubeDescName 
bool mAllowPlayerStep 
F32 mAlphaFade 
F32 mAlphaFadeEnd 
F32 mAlphaFadeStart 
TSThread * mAmbientThread 
String mAppliedSkinName 
Vector< S32 > mCollisionDetails 
MeshType mCollisionType 

The type of mesh data to return for collision queries.

Convex * mConvexList 
CubeReflector mCubeReflector 
MeshType mDecalType 

The type of mesh data to return for decal polylist queries.

S32 mForceDetail 
bool mInvertAlphaFade 
Vector< S32 > mLOSDetails 
bool mMeshCulling 

If true each submesh within the TSShape is culled against the object space frustum.

PhysicsBody * mPhysicsRep 
bool mPlayAmbient 
F32 mRenderNormalScalar 
Resource< TSShape > mShape 
U32 mShapeHash 
TSShapeInstance * mShapeInstance 
StringTableEntry mShapeName 
NetStringHandle mSkinNameHandle 
bool mUseAlphaFade 
bool mUseOriginSort 

If true the shape is sorted by the origin of the model instead of the nearest point of the bounds.

ReflectorDesc * reflectorDesc 

Public Functions

TSStatic()

~TSStatic()

allowPlayerStep()

DECLARE_CONOBJECT(TSStatic )

getCollisionDetails()

getCollisionType()

The type of mesh data use for collision queries.

getLOSDetails()

getShape()

getShapeFileName()

getShapeInstance()

inspectPostApply()

Reimplemented from: SceneObject

onMount(SceneObject * obj, S32 node)

Reimplemented from: SceneObject

onScaleChanged()

Reimplemented from: SceneObject

onUnmount(SceneObject * obj, S32 node)

Reimplemented from: SceneObject

packUpdate(NetConnection * conn, U32 mask, BitStream * stream)

Reimplemented from: SceneObject

prepRenderImage(SceneRenderState * state)

Reimplemented from: SceneObject

reSkin()

setAlphaFade(bool enable, F32 start, F32 end, bool inverse)

setShapeFileName(StringTableEntry shapeName)

setSkinName(const char * name)

setTransform(const MatrixF & mat)

Reimplemented from: SceneObject

unpackUpdate(NetConnection * conn, BitStream * stream)

Reimplemented from: SceneObject

Protected Functions

_createShape()

_onResourceChanged(const Torque::Path & path)

_renderNormals(ObjectRenderInst * ri, SceneRenderState * state, BaseMatInstance * overrideMat)

_updatePhysics()

_updateShouldTick()

Start or stop processing ticks depending on our state.

advanceTime(F32 dt)

Reimplemented from: ProcessObject

buildConvex(const Box3F & box, Convex * convex)

Reimplemented from: SceneObject

buildPolyList(PolyListContext context, AbstractPolyList * polyList, const Box3F & box, const SphereF & sphere)

Reimplemented from: SceneObject

castRay(const Point3F & start, const Point3F & end, RayInfo * info)

Reimplemented from: SceneObject

castRayRendered(const Point3F & start, const Point3F & end, RayInfo * info)

Reimplemented from: SceneObject

interpolateTick(F32 delta)

Reimplemented from: ProcessObject

onAdd()

Reimplemented from: SceneObject

onRemove()

Reimplemented from: SceneObject

prepCollision()

processTick(const Move * move)

Reimplemented from: ProcessObject

Public Static Functions

_getFieldSkin(void * object, const char * data)

_setFieldSkin(void * object, const char * index, const char * data)

initPersistFields()