|
RigsofRods
Soft-body Physics Simulation
|
Go to the documentation of this file.
24 #ifndef _SkyX_VClouds_LightningManager_H_
25 #define _SkyX_VClouds_LightningManager_H_
27 #include "Prerequisites.h"
31 namespace SkyX {
namespace VClouds{
73 void update(
const Ogre::Real& timeSinceLastFrame);
83 Lightning*
addLightning(
const Ogre::Vector3& p,
const Ogre::Vector3& d,
const Ogre::Real l,
const Ogre::uint32& div =
static_cast<Ogre::uint32
>(Ogre::Math::RangeRandom(12, 30)));
Ogre::Real mLightningTimeMultiplier
Lightning time multiplier.
virtual void lightningAdded(Lightning *l)
Lightning added.
Ogre::Real mAverageLightningApparitionTime
Average lightning apparition time (in seconds)
VClouds * mVClouds
VClouds pointer.
const bool & isCreated() const
Has been create() already called?
LightningManager(VClouds *vc)
Constructor.
void setEnabled(const bool &enable)
Enable or disable the lightning system.
const bool & isEnabled() const
Get whether the lightning system is enabled or not.
std::vector< Listener * > mListeners
Listeners.
std::vector< Lightning * > mLightnings
Lightnings.
Ogre::Real mRemainingTime
Remaining time for next lightning.
void setLightningColor(const Ogre::Vector3 &c)
Set lightning color.
void update(const Ogre::Real &timeSinceLastFrame)
Update, to be invoked per frame.
const Ogre::Real & getAverageLightningApparitionTime() const
Get average lightning apparition time.
void _updateRenderQueueGroup(const Ogre::uint8 &rqg)
Update render queue group.
Ogre::Vector3 mLightningColor
Lightning color.
void setAverageLightningApparitionTime(const Ogre::Real &alat)
Set average lightning apparition time.
~LightningManager()
Destructor.
void _setVisible(const bool &v)
Set visible.
const Ogre::Real & getLightningTimeMultiplier() const
Set lightning time multiplier.
const std::vector< Listener * > & getListeners() const
Get listeners.
Lightning * addLightning(const Ogre::Vector3 &p, const Ogre::Vector3 &d, const Ogre::Real l, const Ogre::uint32 &div=static_cast< Ogre::uint32 >(Ogre::Math::RangeRandom(12, 30)))
Add lightning.
void removeListeners()
Remove listeners.
std::vector< Ogre::SceneNode * > mSceneNodes
Scene nodes.
void removeListener(Listener *listener)
Remove listener.
Ogre::MaterialPtr mLightningMaterial
Lightning material.
bool mEnabled
Is the lightning system enabled?
void updateMaterial()
Update material.
void addListener(Listener *listener)
Add listener.
const Ogre::Vector3 & getLightningColor() const
Get lightning color.
bool mCreated
Has been create() already called?
void setLightningTimeMultiplier(const Ogre::Real &m)
Set lightning time multiplier.
Ogre::MaterialPtr mVolCloudsLightningMaterial
Vol. clouds + lightning material.