WaterPlane
Engine/source/environment/waterPlane.h
Public Types
EWaterType { eWater = 0 eOceanWater = 1 eRiverWater = 2 eStagnantWater = 3 eLava = 4 eHotLava = 5 eCrustyLava = 6 eQuicksand = 7 }
Private Types
MaskBits { UpdateMask = Parent::NextFreeMask NextFreeMask = Parent::NextFreeMask << 1 }
Parent
Private Attributes
Private Functions
innerRender(SceneRenderState * state)
prepRenderImage(SceneRenderState * state)
Called when the SceneManager is ready for the registration of render instances.
setShaderParams(SceneRenderState * state, BaseMatInstance * mat, const WaterMatParams & paramHandles)
setupSceneGraphInfo(SceneRenderState * state)
setupVBIB(SceneRenderState * state)
Protected Functions
bool
bool
onAdd()
Called when the object is added to the sim.
packUpdate(NetConnection * conn, U32 mask, BitStream * stream)
Instructs this object to pack its state for transfer over the network.
unpackUpdate(NetConnection * conn, BitStream * stream)
Instructs this object to read state data previously packed with packUpdate.
Public Functions
bool
buildPolyList(PolyListContext context, AbstractPolyList * polyList, const Box3F & box, const SphereF & sphere)
Builds a list of polygons which intersect a bounding volume.
distanceTo(const Point3F & pnt)
Returns the distance from this object to a point
getSurfaceHeight(const Point2F & pos)
getWaterCoverage(const Box3F & worldBox)
Called after any property of the object is changed in the world editor.
bool
isPointSubmerged(const Point3F & pos, bool worldSpace)
bool
isUnderwater(const Point3F & pnt)
onStaticModified(const char * slotName, const char * newValue)
Specifically, these are called by setDataField when a static or dynamic field is modified, see the console details.
setGridElementSize(F32 inSize)
setGridSize(U32 inSize)
setTransform(const MatrixF & mat)
Sets the Object -> World transform.
Public Static Functions
bool
protectedSetGridElementSize(void * object, const char * index, const char * data)
bool
protectedSetGridSize(void * object, const char * index, const char * data)
Detailed Description
Public Types
EWaterType
Enumerator
- eWater = 0
- eOceanWater = 1
- eRiverWater = 2
- eStagnantWater = 3
- eLava = 4
- eHotLava = 5
- eCrustyLava = 6
- eQuicksand = 7
Private Types
MaskBits
Enumerator
- UpdateMask = Parent::NextFreeMask
- NextFreeMask = Parent::NextFreeMask << 1
typedef WaterObject Parent
Private Attributes
Frustum mFrustum
F32 mGridElementSize
U32 mGridSize
U32 mGridSizeMinusOne
U32 mIndxCount
GFXPrimitiveBufferHandle mPrimBuff
U32 mPrimCount
GFXVertexBufferHandle< GFXWaterVertex > mVertBuff
U32 mVertCount
Private Functions
innerRender(SceneRenderState * state)
Reimplemented from: WaterObject
prepRenderImage(SceneRenderState * state)
Reimplemented from: WaterObject
setMultiPassProjection()
setShaderParams(SceneRenderState * state, BaseMatInstance * mat, const WaterMatParams & paramHandles)
Reimplemented from: WaterObject
setupSceneGraphInfo(SceneRenderState * state)
setupVBIB(SceneRenderState * state)
Protected Functions
_getWaterPlane(const Point3F & camPos, PlaneF & outPlane, Point3F & outPos)
Reimplemented from: WaterObject
castRay(const Point3F & start, const Point3F & end, RayInfo * info)
Reimplemented from: SceneObject
onAdd()
Reimplemented from: WaterObject
onRemove()
Reimplemented from: WaterObject
packUpdate(NetConnection * conn, U32 mask, BitStream * stream)
Reimplemented from: WaterObject
unpackUpdate(NetConnection * conn, BitStream * stream)
Reimplemented from: WaterObject
Public Functions
WaterPlane()
~WaterPlane()
buildPolyList(PolyListContext context, AbstractPolyList * polyList, const Box3F & box, const SphereF & sphere)
Reimplemented from: SceneObject
DECLARE_CONOBJECT(WaterPlane )
distanceTo(const Point3F & pnt)
Reimplemented from: SceneObject
getSurfaceHeight(const Point2F & pos)
Reimplemented from: WaterObject
getWaterCoverage(const Box3F & worldBox)
Reimplemented from: WaterObject
inspectPostApply()
Reimplemented from: WaterObject
isPointSubmerged(const Point3F & pos, bool worldSpace)
isUnderwater(const Point3F & pnt)
Reimplemented from: WaterObject
onReflectionInfoChanged()
onStaticModified(const char * slotName, const char * newValue)
Reimplemented from: SimObject
setGridElementSize(F32 inSize)
setGridSize(U32 inSize)
setTransform(const MatrixF & mat)
Reimplemented from: SceneObject
Public Static Functions
initPersistFields()
protectedSetGridElementSize(void * object, const char * index, const char * data)
protectedSetGridSize(void * object, const char * index, const char * data)