A gray tank! :D
This commit is contained in:
+40
-7
@@ -5,11 +5,41 @@ void GameWorld::Initialize()
|
||||
{
|
||||
World::Initialize();
|
||||
|
||||
auto terrain = CreateEntity();
|
||||
auto transform = AddComponent<Components::Transform>(terrain, "Transform");
|
||||
std::shared_ptr<Components::Transform> transform;
|
||||
std::shared_ptr<Components::Model> model;
|
||||
|
||||
auto camera = CreateEntity();
|
||||
transform = AddComponent<Components::Transform>(camera, "Transform");
|
||||
transform->Position.z = 5.f;
|
||||
auto cameraComp = AddComponent<Components::Camera>(camera, "Camera");
|
||||
AddComponent(camera, "Input");
|
||||
auto freeSteering = AddComponent<Components::FreeSteering>(camera, "FreeSteering");
|
||||
|
||||
/*auto terrain = CreateEntity();
|
||||
transform = AddComponent<Components::Transform>(terrain, "Transform");
|
||||
transform->Scale = glm::vec3(.0005f);
|
||||
auto model = AddComponent<Components::Model>(terrain, "Model");
|
||||
model->ModelFile = "Models/terrain/terrain.obj";
|
||||
model = AddComponent<Components::Model>(terrain, "Model");
|
||||
model->ModelFile = "Models/terrain/terrain.obj";*/
|
||||
|
||||
auto tank = CreateEntity();
|
||||
transform = AddComponent<Components::Transform>(tank, "Transform");
|
||||
transform->Scale = glm::vec3(.01f);
|
||||
model = AddComponent<Components::Model>(tank, "Model");
|
||||
model->ModelFile = "Models/tank/tank_base.obj";
|
||||
{
|
||||
auto tank_top = CreateEntity(tank);
|
||||
transform = AddComponent<Components::Transform>(tank_top, "Transform");
|
||||
//transform->Scale = glm::vec3(.0005f);
|
||||
model = AddComponent<Components::Model>(tank_top, "Model");
|
||||
model->ModelFile = "Models/tank/tank_top.obj";
|
||||
{
|
||||
auto tank_barrel = CreateEntity(tank_top);
|
||||
transform = AddComponent<Components::Transform>(tank_barrel, "Transform");
|
||||
//transform->Scale = glm::vec3(.0005f);
|
||||
model = AddComponent<Components::Model>(tank_barrel, "Model");
|
||||
model->ModelFile = "Models/tank/tank_barrel.obj";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void GameWorld::Update(double dt)
|
||||
@@ -31,17 +61,19 @@ void GameWorld::RegisterComponents()
|
||||
m_ComponentFactory.Register("Sprite", []() { return new Components::Sprite(); });
|
||||
m_ComponentFactory.Register("Template", []() { return new Components::Template(); });
|
||||
m_ComponentFactory.Register("Transform", []() { return new Components::Transform(); });
|
||||
m_ComponentFactory.Register("FreeSteering", []() { return new Components::FreeSteering(); });
|
||||
}
|
||||
|
||||
void GameWorld::RegisterSystems()
|
||||
{
|
||||
m_SystemFactory.Register("TransformSystem", [this]() { return new Systems::TransformSystem(this); });
|
||||
//m_SystemFactory.Register("LevelGenerationSystem", [this]() { return new Systems::LevelGenerationSystem(this); });
|
||||
//m_SystemFactory.Register("InputSystem", [this]() { return new Systems::InputSystem(this, m_Renderer); });
|
||||
m_SystemFactory.Register("InputSystem", [this]() { return new Systems::InputSystem(this, m_Renderer); });
|
||||
//m_SystemFactory.Register("CollisionSystem", [this]() { return new Systems::CollisionSystem(this); });
|
||||
////m_SystemFactory.Register("ParticleSystem", [this]() { return new Systems::ParticleSystem(this); });
|
||||
//m_SystemFactory.Register("PlayerSystem", [this]() { return new Systems::PlayerSystem(this); });
|
||||
m_SystemFactory.Register("FreeSteeringSystem", [this]() { return new Systems::FreeSteeringSystem(this); });
|
||||
//m_SystemFactory.Register("SoundSystem", [this]() { return new Systems::SoundSystem(this); });
|
||||
m_SystemFactory.Register("TransformSystem", [this]() { return new Systems::TransformSystem(this); });
|
||||
m_SystemFactory.Register("RenderSystem", [this]() { return new Systems::RenderSystem(this, m_Renderer); });
|
||||
}
|
||||
|
||||
@@ -49,10 +81,11 @@ void GameWorld::AddSystems()
|
||||
{
|
||||
AddSystem("TransformSystem");
|
||||
//AddSystem("LevelGenerationSystem");
|
||||
//AddSystem("InputSystem");
|
||||
AddSystem("InputSystem");
|
||||
//AddSystem("CollisionSystem");
|
||||
////AddSystem("ParticleSystem");
|
||||
//AddSystem("PlayerSystem");
|
||||
AddSystem("FreeSteeringSystem");
|
||||
//AddSystem("SoundSystem");
|
||||
AddSystem("RenderSystem");
|
||||
}
|
||||
Reference in New Issue
Block a user