blob: f94b804857c8904a74a66afb4ab4ad6301418a5d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
#include "environmentsystem.h"
#include "Game/Environment/grassenvironment.h"
#include "Game/Environment/skyboxenvironment.h"
#include "Game/Environment/water.h"
EnvironmentSystem::EnvironmentSystem(std::map<std::string, std::shared_ptr<GameObject>>& rigid_gameobjects,
std::map<std::string, std::shared_ptr<GameObject>>& dynamic_gameobjects,
std::shared_ptr<Camera> camera)
{
addEnviron<GrassEnvironment>(std::make_shared<GrassEnvironment>(rigid_gameobjects, dynamic_gameobjects, camera));
addEnviron<SkyboxEnvironment>(std::make_shared<SkyboxEnvironment>(camera));
addEnviron<Water>(std::make_shared<Water>(camera));
}
void EnvironmentSystem::draw(){
for (auto &environ : m_environs){
environ.second->draw();
}
}
void EnvironmentSystem::drawNonWater(){
getEnviron<GrassEnvironment>()->draw();
getEnviron<SkyboxEnvironment>()->draw();
}
void EnvironmentSystem::update(double deltaTime){
for (auto &environ : m_environs){
environ.second->update(deltaTime);
}
}
void EnvironmentSystem::scrollEvent(double distance){}
void EnvironmentSystem::mousePosEvent(double xpos, double ypos) {}
|