RigsofRods
Soft-body Physics Simulation
SkyXManager.h
Go to the documentation of this file.
1 /*
2 This source file is part of Rigs of Rods
3 Copyright 2005-2012 Pierre-Michel Ricordel
4 Copyright 2007-2012 Thomas Fischer
5 
6 For more information, see http://www.rigsofrods.com/
7 
8 Rigs of Rods is free software: you can redistribute it and/or modify
9 it under the terms of the GNU General Public License version 3, as
10 published by the Free Software Foundation.
11 
12 Rigs of Rods is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
16 
17 You should have received a copy of the GNU General Public License
18 along with Rigs of Rods. If not, see <http://www.gnu.org/licenses/>.
19 */
20 
21 #pragma once
22 
23 #include "Application.h"
24 
25 #include "gfx/skyx/SkyX.h"
26 
27 namespace RoR {
28 
31 
33 {
34 public:
35  SkyXManager(Ogre::String configFile);
36  ~SkyXManager();
37 
38  Ogre::Vector3 getMainLightDirection();
39 
40  Ogre::Light* getMainLight();
41 
42  bool update( float dt );
43 
44  bool InitLight();
45 
46  size_t getMemoryUsage();
47 
48  void freeResources();
49 
50  bool UpdateSkyLight();
51 
52  SkyX::SkyX* GetSkyX() { return mSkyX; }
53 
54 protected:
55  Ogre::Light *mLight0 = nullptr;
56  Ogre::Light *mLight1 = nullptr;
57 
58  SkyX::SkyX* mSkyX = nullptr;
60 
64 
66 
67  int mLastHour = 0;
68 };
69 
71 
72 } // namespace RoR
SkyX::ColorGradient
Definition: ColorGradient.h:31
SkyX::BasicController
Basic controller class
Definition: BasicController.h:35
RoR::SkyXManager::mAmbientGradient
SkyX::ColorGradient mAmbientGradient
Definition: SkyXManager.h:63
RoR::SkyXManager::getMemoryUsage
size_t getMemoryUsage()
Definition: SkyXManager.cpp:187
RoR::SkyXManager::getMainLightDirection
Ogre::Vector3 getMainLightDirection()
Definition: SkyXManager.cpp:65
RoR::SkyXManager::mCfgFileManager
SkyX::CfgFileManager * mCfgFileManager
Definition: SkyXManager.h:65
RoR::SkyXManager::InitLight
bool InitLight()
Definition: SkyXManager.cpp:147
RoR::SkyXManager::~SkyXManager
~SkyXManager()
Definition: SkyXManager.cpp:54
RoR::SkyXManager::GetSkyX
SkyX::SkyX * GetSkyX()
Definition: SkyXManager.h:52
RoR::SkyXManager::UpdateSkyLight
bool UpdateSkyLight()
Definition: SkyXManager.cpp:85
RoR::SkyXManager::freeResources
void freeResources()
Definition: SkyXManager.cpp:193
RoR::SkyXManager::mLight1
Ogre::Light * mLight1
Definition: SkyXManager.h:56
SkyX.h
RoR::SkyXManager::getMainLight
Ogre::Light * getMainLight()
Definition: SkyXManager.cpp:72
Application.h
Central state/object manager and communications hub.
RoR::SkyXManager::mSunGradient
SkyX::ColorGradient mSunGradient
Definition: SkyXManager.h:62
RoR::SkyXManager::mWaterGradient
SkyX::ColorGradient mWaterGradient
Definition: SkyXManager.h:61
RoR::SkyXManager::mBasicController
SkyX::BasicController * mBasicController
Definition: SkyXManager.h:59
RoR::SkyXManager::update
bool update(float dt)
Definition: SkyXManager.cpp:77
RoR::SkyXManager::SkyXManager
SkyXManager(Ogre::String configFile)
Definition: SkyXManager.cpp:36
RoR::SkyXManager::mSkyX
SkyX::SkyX * mSkyX
Definition: SkyXManager.h:58
SkyX::CfgFileManager
Config file manager.
Definition: SCfgFileManager.h:40
RoR
Definition: AppContext.h:36
SkyX::SkyX
SkyX class Create simple and beautiful skies!
Definition: SkyX.h:61
RoR::SkyXManager::mLight0
Ogre::Light * mLight0
Definition: SkyXManager.h:55
RoR::SkyXManager
Definition: SkyXManager.h:32
RoR::SkyXManager::mLastHour
int mLastHour
Definition: SkyXManager.h:67