fixed some minor issues
This commit is contained in:
4
.vscode/c_cpp_properties.json
vendored
4
.vscode/c_cpp_properties.json
vendored
@@ -3,8 +3,8 @@
|
|||||||
{
|
{
|
||||||
"name": "Linux",
|
"name": "Linux",
|
||||||
"includePath": [
|
"includePath": [
|
||||||
"${workspaceFolder}/DemoProject/include",
|
"${workspaceFolder}/TSE-RTS/include",
|
||||||
"${workspaceFolder}/DemoProject/src",
|
"${workspaceFolder}/TSE-RTS/src",
|
||||||
"${workspaceFolder}/TSE/TSE_Base/include",
|
"${workspaceFolder}/TSE/TSE_Base/include",
|
||||||
"${workspaceFolder}/TSE/TSE_Base/src",
|
"${workspaceFolder}/TSE/TSE_Base/src",
|
||||||
"${workspaceFolder}/TSE/TSE_Core/include",
|
"${workspaceFolder}/TSE/TSE_Core/include",
|
||||||
|
|||||||
2
TSE
2
TSE
Submodule TSE updated: 236da3059f...2f3fdf83ae
@@ -15,66 +15,82 @@
|
|||||||
#include "elements/Scene.hpp"
|
#include "elements/Scene.hpp"
|
||||||
#include "EditorSubsystem.hpp"
|
#include "EditorSubsystem.hpp"
|
||||||
|
|
||||||
|
#define USE_EDITOR
|
||||||
|
|
||||||
using namespace TSE;
|
using namespace TSE;
|
||||||
using namespace TSE::GLFW;
|
using namespace TSE::GLFW;
|
||||||
using namespace TSE::EDITOR;
|
using namespace TSE::EDITOR;
|
||||||
|
|
||||||
int main(int argc, char** argv)
|
IWindow* wnd = nullptr;
|
||||||
|
DefaultRendererOpenGL* rend = nullptr;
|
||||||
|
Scene* currentScene = nullptr;
|
||||||
|
Layer* planeteryLayer = nullptr;
|
||||||
|
EditorSubsystem* editor;
|
||||||
|
|
||||||
|
void SetupWindow()
|
||||||
{
|
{
|
||||||
IWindow* wnd = new WindowGlfw("DemoProject", 600, 400, new OpenGLRenderingBackend(Color::aqua, false, 4, true));
|
Color backColor(0.0571f, 0.0819f, 0.1043f);
|
||||||
EditorSubsystem editor;
|
#ifdef USE_EDITOR
|
||||||
LoadBasicShaders(600, 400);
|
wnd = new WindowGlfw(PROJECT_NAME, 800, 600, new OpenGLRenderingBackend(backColor, false, 8, true), WindowType::Maximized);
|
||||||
|
editor = new EditorSubsystem();
|
||||||
DefaultRendererOpenGL rnd = DefaultRendererOpenGL(*BasicShader::Instance());
|
#else
|
||||||
|
wnd = new WindowGlfw(PROJECT_NAME, 800, 600, new OpenGLRenderingBackend(backColor, false, 8, false), WindowType::Maximized);
|
||||||
|
#endif
|
||||||
|
LoadBasicShaders(wnd->GetSize().x, wnd->GetSize().y);
|
||||||
|
|
||||||
#pragma region obj1
|
rend = new DefaultRendererOpenGL(*BasicShader::Instance());
|
||||||
|
currentScene = new Scene();
|
||||||
Transformable* obj1 = new Transformable("testObj");
|
|
||||||
|
|
||||||
RectBase rb = RectBase();
|
|
||||||
obj1->AddBehaviourScript(&rb);
|
|
||||||
Material mat = Material("testMat", BasicShader::Instance());
|
|
||||||
mat.SetValue<Color>("mainColor", Color::black);
|
|
||||||
Renderable r = Renderable(&mat);
|
|
||||||
obj1->AddBehaviourScript(&r);
|
|
||||||
obj1->position = Vector3(0,0,0);
|
|
||||||
obj1->scale = Vector3(8,1,1);
|
|
||||||
|
|
||||||
#pragma endregion
|
|
||||||
|
|
||||||
Layer game("game");
|
|
||||||
|
|
||||||
game.AddTransformable(obj1);
|
|
||||||
|
|
||||||
Scene scene;
|
#ifdef USE_EDITOR
|
||||||
scene.AddLayer(&game);
|
currentScene->AddLayer(&editor->editorLayer);
|
||||||
scene.AddLayer(&editor.editorLayer);
|
editor->hv.SetScene(currentScene);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
//((Camera*)(editor.editorLayer.GetAllObjects()[0]->GetBehaviourScriptAt(0)))->SetRenderTarget(wnd);
|
void CleanUp()
|
||||||
|
{
|
||||||
|
#ifdef USE_EDITOR
|
||||||
|
delete(editor);
|
||||||
|
#endif
|
||||||
|
|
||||||
editor.hv.SetScene(&scene);
|
UnLoadBasicShaders();
|
||||||
|
}
|
||||||
|
|
||||||
|
void GameLoop()
|
||||||
|
{
|
||||||
while(!wnd->ShouldClose())
|
while(!wnd->ShouldClose())
|
||||||
{
|
{
|
||||||
wnd->Clear();
|
wnd->Clear();
|
||||||
rnd.Begin();
|
rend->Begin();
|
||||||
|
|
||||||
scene.Render(rnd, *wnd);
|
if(currentScene != nullptr)
|
||||||
|
currentScene->Render(*rend, *wnd);
|
||||||
|
|
||||||
rnd.End();
|
rend->End();
|
||||||
rnd.Flush();
|
rend->Flush();
|
||||||
|
|
||||||
scene.DoneRender();
|
if(currentScene != nullptr)
|
||||||
|
currentScene->DoneRender();
|
||||||
|
|
||||||
//editor.sv.Render();
|
#ifdef USE_EDITOR
|
||||||
editor.controller.Update();
|
editor->controller.Update();
|
||||||
//ImGui::ShowDemoWindow();
|
#endif
|
||||||
wnd->Update();
|
wnd->Update();
|
||||||
scene.Update();
|
if(currentScene != nullptr)
|
||||||
|
currentScene->Update();
|
||||||
}
|
}
|
||||||
UnLoadBasicShaders();
|
}
|
||||||
Transformable::DeleteAll();
|
|
||||||
|
|
||||||
|
int main(int argc, char** argv)
|
||||||
|
{
|
||||||
|
SetupWindow();
|
||||||
|
|
||||||
|
GameLoop();
|
||||||
|
|
||||||
|
CleanUp();
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user