Add Scene with systems

- Add Scene class which populates the engine with Systems which handles
  all logic in the game
- Add Systems to ecs
This commit is contained in:
Thraix
2023-05-20 19:45:15 +02:00
parent 05d2c2940b
commit 84b24457a0
20 changed files with 626 additions and 42 deletions
+3 -3
View File
@@ -1,6 +1,7 @@
#pragma once
#include "copium/asset/AssetMeta.h"
#include "copium/core/Scene.h"
#include "copium/buffer/Framebuffer.h"
#include "copium/event/EventHandler.h"
#include "copium/mesh/Mesh.h"
@@ -15,7 +16,6 @@ namespace Copium
{
CP_DELETE_COPY_AND_MOVE_CTOR(Application);
private:
std::unique_ptr<Renderer> renderer;
AssetHandle framebuffer;
AssetHandle texture2D;
AssetHandle texture2D2;
@@ -25,7 +25,7 @@ namespace Copium
std::unique_ptr<DescriptorPool> descriptorPool;
std::unique_ptr<DescriptorSet> descriptorSet;
std::unique_ptr<DescriptorSet> descriptorSetPassthrough;
std::unique_ptr<DescriptorSet> descriptorSetRenderer;
std::unique_ptr<Scene> scene;
std::unique_ptr<Mesh> mesh;
std::unique_ptr<Mesh> meshPassthrough;
std::unique_ptr<CommandBuffer> commandBuffer;
@@ -42,7 +42,7 @@ namespace Copium
EventResult OnEvent(const Event& event) override;
private:
void InitializeFrameBuffer();
void InitializeRenderer();
void InitializeScene();
void InitializeTextureSampler();
void InitializeDescriptorSets();
void InitializeGraphicsPipeline();