VClouds::VClouds(Ogre::SceneManager *sm) : mSceneManager(sm) , mCamera(0) , mCreated(false) , mGeometrySettings(GeometrySettings()) , mDistanceFallingParams(Ogre::Vector2(1, -1)) , mRenderQueueGroups(RenderQueueGroups( Ogre::RENDER_QUEUE_MAIN, Ogre::RENDER_QUEUE_9)) , mWindDirection(Ogre::Degree(0)) , mWindSpeed(80.0f) , mWheater(Ogre::Vector2(0.5f, 1.0f)) , mDelayedResponse(false) , mSunDirection(Ogre::Vector3(0, -1, 0)) , mSunColor(Ogre::Vector3(1, 1, 1)) , mAmbientColor(Ogre::Vector3(0.63f, 0.63f, 0.7f)) , mLightResponse(Ogre::Vector4(0.25f, 0.2f, 1.0f, 0.1f)) , mAmbientFactors(Ogre::Vector4(0.45f, 0.3f, 0.6f, 1)) , mGlobalOpacity(1.0f) , mCloudFieldScale(1.0f) , mNoiseScale(4.2f) , mVisible(true) , mDataManager(new DataManager(this)) , mGeometryManager(new GeometryManager(this)) , mLightningManager(new LightningManager(this)) , mCamerasData(std::vector<CameraData>()) , mVolCloudsMaterial(Ogre::MeshPtr()) , mVolCloudsLightningMaterial(Ogre::MeshPtr()) { }
SkyX::SkyX(Ogre::SceneManager* sm, Controller* c) : Ogre::FrameListener() , Ogre::RenderTargetListener() , mStarfield(true) , mLightingMode(LM_LDR) , mSceneManager(sm) , mController(c) , mCamera(0) , mMeshManager(new MeshManager(this)) , mAtmosphereManager(new AtmosphereManager(this)) , mGPUManager(new GPUManager(this)) , mMoonManager(new MoonManager(this)) , mCloudsManager(new CloudsManager(this)) , mRenderQueueGroups(RenderQueueGroups(Ogre::RENDER_QUEUE_SKIES_EARLY, Ogre::RENDER_QUEUE_3, Ogre::RENDER_QUEUE_4)) , mCreated(false) , mLastCameraPosition(Ogre::Vector3(0, 0, 0)) , mLastCameraFarClipDistance(-1) , mInfiniteCameraFarClipDistance(100000) , mVisible(true) , mTimeMultiplier(0.1f) , mTimeOffset(0.0f) , mMoonEnabled(true) , mCloudsEnabled(true) , mEnabled(true) { // Need to be instanced here, when SkyX::mSceneManager is valid mVCloudsManager = new VCloudsManager(this); }