VolumetricFog
Engine/source/environment/VolumetricFog.h
Classes:
Private Types
enum
_Anonymous_ { VolumetricFogMask = Parent::NextFreeMask FogColorMask = Parent::NextFreeMask << 1 FogDensityMask = Parent::NextFreeMask << 2 FogModulationMask = Parent::NextFreeMask << 3 FogPostFXMask = Parent::NextFreeMask << 4 FogShapeMask = Parent::NextFreeMask << 5 NextFreeMask = Parent::NextFreeMask << 6 }
Parent
Protected Attributes
Protected Functions
handleCanvasResize(GuiCanvas * canvas)
handleResize(VolumetricFogRTManager * RTM, bool resize)
bool
bool
onAdd()
Called when the object is added to the sim.
processTick(const Move * move)
Processes a move event and updates object state once every 32 milliseconds.
ResizeRT(PlatformWindow * win, bool resize)
bool
bool
UpdateBuffers(U32 dl, bool force)
Protected Static Functions
bool
_setShapeAsset(void * obj, const char * index, const char * data)
Public Functions
DECLARE_CALLBACK(void , onEnterFog , (SimObjectId obj) )
DECLARE_CALLBACK(void , onLeaveFog , (SimObjectId obj) )
Called after any property of the object is changed in the world editor.
bool
packUpdate(NetConnection * conn, U32 mask, BitStream * stream)
Instructs this object to pack its state for transfer over the network.
prepRenderImage(SceneRenderState * state)
Called when the SceneManager is ready for the registration of render instances.
reflect_render(ObjectRenderInst * ri, SceneRenderState * state, BaseMatInstance * overrideMat)
render(ObjectRenderInst * ri, SceneRenderState * state, BaseMatInstance * overrideMat)
setFogColor(ColorI color)
setFogColor(LinearColorF color)
setFogDensity(F32 density)
setFogGlow(bool on_off, F32 strength)
setFogLightray(bool on_off, F32 strength)
setFogModulation(F32 strength, Point2F speed1, Point2F speed2)
bool
setShapeAsset(const StringTableEntry shapeAssetId)
unpackUpdate(NetConnection * conn, BitStream * stream)
Instructs this object to read state data previously packed with packUpdate.
Public Static Functions
Detailed Description
Private Types
@80
Enumerator
- VolumetricFogMask = Parent::NextFreeMask
- FogColorMask = Parent::NextFreeMask << 1
- FogDensityMask = Parent::NextFreeMask << 2
- FogModulationMask = Parent::NextFreeMask << 3
- FogPostFXMask = Parent::NextFreeMask << 4
- FogShapeMask = Parent::NextFreeMask << 5
- NextFreeMask = Parent::NextFreeMask << 6
typedef SceneObject Parent
Protected Attributes
Point3F camPos
OrientedBox3F ColBox
GameConnection * conn
GFXStateBlockDesc desc_preD
GFXStateBlockDesc desc_preF
GFXStateBlockDesc desc_refl
GFXStateBlockDesc descD
GFXStateBlockDesc descF
Vector< meshes > det_size
PostEffect * glowFX
GFXShaderConstHandle * mAccumTime
GFXShaderConstHandle * mAmbientColorSC
bool mCamInFog
U32 mCounter
U32 mCurDetailLevel
F32 mCurGlow
GFXShaderRef mDeferredShader
NamedTexTargetRef mDeferredTarget
NamedTexTargetRef mDepthBufferTarget
F32 mFadeSize
GFXShaderConstHandle * mFadeSizeSC
ColorI mFogColor
GFXShaderConstHandle * mFogColorSC
F32 mFogDensity
GFXShaderConstHandle * mFogDensitySC
F32 mFogReflStrength
F32 mFOV
NamedTexTargetRef mFrontBufferTarget
U8 mGlowing
F32 mGlowStrength
bool mIgnoreWater
F32 mInvScale
bool mIsPBDirty
bool mIsTextured
GFXShaderConstHandle * mIsTexturedSC
bool mIsVBDirty
F32 mLightRayMod
F32 mMinDisplaySize
GFXShaderConstHandle * mModelViewProjSC
bool mModifLightRays
GFXShaderConstHandle * mModSpeedSC
GFXShaderConstHandle * mModStrengthSC
U32 mNumDetailLevels
VectorF mObjScale
F32 mObjSize
F32 mOldLightRayStrength
GFXPrimitiveBufferHandle mPB
F32 mPixelSize
PlatformWindow * mPlatformWindow
GFXShaderConstHandle * mPPModelViewProjSC
GFXShaderConstBufferRef mPPShaderConsts
GFXShaderConstHandle * mPreBias
F32 mRadius
bool mReflect
GFXShaderRef mReflectionShader
GFXShaderConstHandle * mReflFogColorSC
GFXShaderConstHandle * mReflFogDensitySC
GFXShaderConstHandle * mReflFogStrengthSC
GFXShaderConstHandle * mReflModelViewProjSC
GFXShaderConstBufferRef mReflShaderConsts
bool mResizing
GFXShaderRef mShader
GFXShaderConstBufferRef mShaderConsts
AssetPtr< ShapeAsset > mShapeAsset
StringTableEntry mShapeAssetId
bool mShapeLoaded
StringTableEntry mShapeName
Point4F mSpeed
Point2F mSpeed1
Point2F mSpeed2
GFXStateBlockRef mStateblock_preD
GFXStateBlockRef mStateblock_preF
GFXStateBlockRef mStateblock_refl
GFXStateBlockRef mStateblockD
GFXStateBlockRef mStateblockF
F32 mStrength
Point2F mTexScale
GFXShaderConstHandle * mTexScaleSC
F32 mTexTiles
GFXShaderConstHandle * mTexTilesSC
GFXTexHandle mTexture
String mTextureName
bool mUseGlow
GFXVertexBufferHandle< GFXVertexPNTT > mVB
Point2F mViewPoint
GFXShaderConstHandle * mViewPointSC
F32 viewDist
GFXTextureTargetRef z_buf
Protected Functions
_enterFog(ShapeBase * control)
_leaveFog(ShapeBase * control)
handleCanvasResize(GuiCanvas * canvas)
handleResize(VolumetricFogRTManager * RTM, bool resize)
InitTexture()
LoadShape()
onAdd()
Reimplemented from: SceneObject
onRemove()
Reimplemented from: SceneObject
processTick(const Move * move)
Reimplemented from: ProcessObject
ResizeRT(PlatformWindow * win, bool resize)
setupRenderer()
UpdateBuffers(U32 dl, bool force)
Protected Static Functions
_setShapeAsset(void * obj, const char * index, const char * data)
Public Functions
VolumetricFog()
~VolumetricFog()
DECLARE_CALLBACK(void , onEnterFog , (SimObjectId obj) )
DECLARE_CALLBACK(void , onLeaveFog , (SimObjectId obj) )
DECLARE_CONOBJECT(VolumetricFog )
inspectPostApply()
Reimplemented from: SceneObject
isInsideFog()
packUpdate(NetConnection * conn, U32 mask, BitStream * stream)
Reimplemented from: SceneObject
prepRenderImage(SceneRenderState * state)
Reimplemented from: SceneObject
reflect_render(ObjectRenderInst * ri, SceneRenderState * state, BaseMatInstance * overrideMat)
render(ObjectRenderInst * ri, SceneRenderState * state, BaseMatInstance * overrideMat)
setFogColor(ColorI color)
setFogColor(LinearColorF color)
setFogDensity(F32 density)
setFogGlow(bool on_off, F32 strength)
setFogLightray(bool on_off, F32 strength)
setFogModulation(F32 strength, Point2F speed1, Point2F speed2)
setShapeAsset(const StringTableEntry shapeAssetId)
unpackUpdate(NetConnection * conn, BitStream * stream)
Reimplemented from: SceneObject