I've added code in preparation to loading a file including a Level to the LevelSystem to the game. Not done at all.
This commit is contained in:
+30
-5
@@ -25,7 +25,7 @@
|
|||||||
#include "Texture.h"
|
#include "Texture.h"
|
||||||
#include "EventBroker.h"
|
#include "EventBroker.h"
|
||||||
#include "RenderQueue.h"
|
#include "RenderQueue.h"
|
||||||
#include "BGFXRenderer.h"
|
#include "Renderer.h"
|
||||||
#include "InputManager.h"
|
#include "InputManager.h"
|
||||||
//TODO: Remove includes that are only here for the temporary draw solution.
|
//TODO: Remove includes that are only here for the temporary draw solution.
|
||||||
#include "World.h"
|
#include "World.h"
|
||||||
@@ -45,9 +45,9 @@ public:
|
|||||||
{
|
{
|
||||||
m_EventBroker = std::make_shared<EventBroker>();
|
m_EventBroker = std::make_shared<EventBroker>();
|
||||||
|
|
||||||
m_Renderer = std::make_shared<BGFXRenderer>();
|
m_Renderer = std::make_shared<Renderer>();
|
||||||
m_Renderer->SetFullscreen(false);
|
m_Renderer->SetFullscreen(false);
|
||||||
m_Renderer->SetResolution(Rectangle(0, 0, 1280, 720));
|
m_Renderer->SetResolution(Rectangle(0, 0, 1920, 1080));
|
||||||
m_Renderer->Initialize();
|
m_Renderer->Initialize();
|
||||||
|
|
||||||
m_InputManager = std::make_shared<InputManager>(m_Renderer->Window(), m_EventBroker);
|
m_InputManager = std::make_shared<InputManager>(m_Renderer->Window(), m_EventBroker);
|
||||||
@@ -58,17 +58,28 @@ public:
|
|||||||
m_World->ComponentFactory.Register<Components::Transform>();
|
m_World->ComponentFactory.Register<Components::Transform>();
|
||||||
m_World->SystemFactory.Register<Systems::TransformSystem>([this]() { return new Systems::TransformSystem(m_World.get(), m_EventBroker); });
|
m_World->SystemFactory.Register<Systems::TransformSystem>([this]() { return new Systems::TransformSystem(m_World.get(), m_EventBroker); });
|
||||||
m_World->AddSystem<Systems::TransformSystem>();
|
m_World->AddSystem<Systems::TransformSystem>();
|
||||||
|
<<<<<<< HEAD
|
||||||
m_World->SystemFactory.Register<Systems::LevelSystem>([this]() { return new Systems::LevelSystem(m_World.get(), m_EventBroker); });
|
m_World->SystemFactory.Register<Systems::LevelSystem>([this]() { return new Systems::LevelSystem(m_World.get(), m_EventBroker); });
|
||||||
m_World->AddSystem<Systems::LevelSystem>();
|
m_World->AddSystem<Systems::LevelSystem>();
|
||||||
|
=======
|
||||||
|
>>>>>>> origin/master
|
||||||
m_World->ComponentFactory.Register<Components::Model>();
|
m_World->ComponentFactory.Register<Components::Model>();
|
||||||
m_World->ComponentFactory.Register<Components::Template>();
|
m_World->ComponentFactory.Register<Components::Template>();
|
||||||
m_World->Initialize();
|
m_World->Initialize();
|
||||||
|
|
||||||
|
<<<<<<< HEAD
|
||||||
// auto ent = m_World->CreateEntity();
|
// auto ent = m_World->CreateEntity();
|
||||||
// std::shared_ptr<Components::Transform> transform = m_World->AddComponent<Components::Transform>(ent);
|
// std::shared_ptr<Components::Transform> transform = m_World->AddComponent<Components::Transform>(ent);
|
||||||
// transform->Position = glm::vec3(0.f, 0.f, -10.f);
|
// transform->Position = glm::vec3(0.f, 0.f, -10.f);
|
||||||
// std::shared_ptr<Components::Model> model = m_World->AddComponent<Components::Model>(ent);
|
// std::shared_ptr<Components::Model> model = m_World->AddComponent<Components::Model>(ent);
|
||||||
// model->ModelFile = "Models/Core/UnitSphere.obj";
|
// model->ModelFile = "Models/Core/UnitSphere.obj";
|
||||||
|
=======
|
||||||
|
auto ent = m_World->CreateEntity();
|
||||||
|
std::shared_ptr<Components::Transform> transform = m_World->AddComponent<Components::Transform>(ent);
|
||||||
|
transform->Position = glm::vec3(0.f, 0.f, -10.f);
|
||||||
|
std::shared_ptr<Components::Model> model = m_World->AddComponent<Components::Model>(ent);
|
||||||
|
model->ModelFile = "Models/Core/UnitSphere.obj";
|
||||||
|
>>>>>>> origin/master
|
||||||
|
|
||||||
|
|
||||||
m_LastTime = glfwGetTime();
|
m_LastTime = glfwGetTime();
|
||||||
@@ -88,6 +99,7 @@ public:
|
|||||||
m_InputManager->Update(dt);
|
m_InputManager->Update(dt);
|
||||||
|
|
||||||
m_World->Update(dt);
|
m_World->Update(dt);
|
||||||
|
<<<<<<< HEAD
|
||||||
//
|
//
|
||||||
// if (glfwGetKey(m_Renderer->Window(), GLFW_KEY_R)) {
|
// if (glfwGetKey(m_Renderer->Window(), GLFW_KEY_R)) {
|
||||||
// ResourceManager::Reload("Shaders/Deferred/3/Fragment.glsl");
|
// ResourceManager::Reload("Shaders/Deferred/3/Fragment.glsl");
|
||||||
@@ -99,6 +111,19 @@ public:
|
|||||||
// Render scene
|
// Render scene
|
||||||
//TODO send renderqueue to draw.
|
//TODO send renderqueue to draw.
|
||||||
// m_Renderer->Draw(m_RendererQueue);
|
// m_Renderer->Draw(m_RendererQueue);
|
||||||
|
=======
|
||||||
|
|
||||||
|
if (glfwGetKey(m_Renderer->Window(), GLFW_KEY_R)) {
|
||||||
|
ResourceManager::Reload("Shaders/Deferred/3/Fragment.glsl");
|
||||||
|
}
|
||||||
|
|
||||||
|
//TODO Fill up the renderQueue with models (Temp fix)
|
||||||
|
TEMPAddToRenderQueue();
|
||||||
|
|
||||||
|
// Render scene
|
||||||
|
//TODO send renderqueue to draw.
|
||||||
|
m_Renderer->Draw(m_RendererQueue);
|
||||||
|
>>>>>>> origin/master
|
||||||
|
|
||||||
// Swap event queues
|
// Swap event queues
|
||||||
m_EventBroker->Clear();
|
m_EventBroker->Clear();
|
||||||
@@ -172,9 +197,9 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
//std::shared_ptr<ResourceManager> m_ResourceManager;
|
std::shared_ptr<ResourceManager> m_ResourceManager;
|
||||||
std::shared_ptr<EventBroker> m_EventBroker;
|
std::shared_ptr<EventBroker> m_EventBroker;
|
||||||
std::shared_ptr<BGFXRenderer> m_Renderer;
|
std::shared_ptr<Renderer> m_Renderer;
|
||||||
RenderQueueCollection m_RendererQueue;
|
RenderQueueCollection m_RendererQueue;
|
||||||
std::shared_ptr<InputManager> m_InputManager;
|
std::shared_ptr<InputManager> m_InputManager;
|
||||||
std::shared_ptr<World> m_World;
|
std::shared_ptr<World> m_World;
|
||||||
|
|||||||
@@ -9,6 +9,9 @@
|
|||||||
#include "Core/CTransform.h"
|
#include "Core/CTransform.h"
|
||||||
//#include "Rendering/CSprite.h"
|
//#include "Rendering/CSprite.h"
|
||||||
#include "Core/EventBroker.h"
|
#include "Core/EventBroker.h"
|
||||||
|
#include <fstream>
|
||||||
|
#include <iostream>
|
||||||
|
#include <intrin.h>
|
||||||
|
|
||||||
namespace dd
|
namespace dd
|
||||||
{
|
{
|
||||||
@@ -16,6 +19,17 @@ namespace dd
|
|||||||
namespace Systems
|
namespace Systems
|
||||||
{
|
{
|
||||||
|
|
||||||
|
// Me trying things out.
|
||||||
|
class Level
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
int levelRows;
|
||||||
|
int levelLines;
|
||||||
|
int levelSpaceBetweenBricks;
|
||||||
|
int levelSpaceToEdge;
|
||||||
|
int bricks[];
|
||||||
|
};
|
||||||
|
|
||||||
class LevelSystem : public System
|
class LevelSystem : public System
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@@ -26,6 +40,8 @@ public:
|
|||||||
void Initialize() override;
|
void Initialize() override;
|
||||||
|
|
||||||
void CreateBasicLevel(int, int, int, int);
|
void CreateBasicLevel(int, int, int, int);
|
||||||
|
void SaveLevel(int, int, int, int); // Shouldn't be here, but I'm experimenting.
|
||||||
|
void LoadLevel(char[20]);
|
||||||
void CreateBrick(int, int, int, int);
|
void CreateBrick(int, int, int, int);
|
||||||
void ProcessCollision();
|
void ProcessCollision();
|
||||||
|
|
||||||
@@ -37,7 +53,6 @@ public:
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
int numberOfBricks;
|
int numberOfBricks;
|
||||||
EntityID bricks[];
|
|
||||||
int tRows = 8;
|
int tRows = 8;
|
||||||
int tLines = 8;
|
int tLines = 8;
|
||||||
int tSpaceBetweenBricks = 30;
|
int tSpaceBetweenBricks = 30;
|
||||||
|
|||||||
Regular → Executable
+2
-1
@@ -37,6 +37,7 @@ void main()
|
|||||||
vec4 LightingTexel = texture(LightingTexture, Input.TextureCoord);
|
vec4 LightingTexel = texture(LightingTexture, Input.TextureCoord);
|
||||||
|
|
||||||
//frag_Diffuse = DiffuseTexel * (vec4(La, 0.0) * (vec4(LightingTexel.rgb, 0.0) + vec4(LightingTexel.a, LightingTexel.a, LightingTexel.a, 0.0)));
|
//frag_Diffuse = DiffuseTexel * (vec4(La, 0.0) * (vec4(LightingTexel.rgb, 0.0) + vec4(LightingTexel.a, LightingTexel.a, LightingTexel.a, 0.0)));
|
||||||
frag_Diffuse = DiffuseTexel * (vec4(La, 0.0) + LightingTexel);
|
//frag_Diffuse = DiffuseTexel * (vec4(La, 0.0) + LightingTexel);
|
||||||
|
frag_Diffuse = DiffuseTexel;
|
||||||
//frag_Diffuse = vec4(LightingTexel.r, LightingTexel.g, LightingTexel.b, 1.0);
|
//frag_Diffuse = vec4(LightingTexel.r, LightingTexel.g, LightingTexel.b, 1.0);
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user