diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index d350a65d..56bf3f81 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,4 +1,4 @@ -name: Build StarStudio +name: Build StarEngine on: push: @@ -16,23 +16,30 @@ jobs: - name: Checkout repository uses: actions/checkout@v4 with: - submodules: recursive + submodules: recursive + fetch-depth: 0 + + - name: Checkout correct commit for GLFW submodule + run: | + cd StarEngine/vendor/GLFW + git fetch origin 9544dde61dc927b5f5d8a3b393e2ede295d3abd4 + git checkout 9544dde61dc927b5f5d8a3b393e2ede295d3abd4 - name: Set up MSBuild uses: microsoft/setup-msbuild@v1.0.2 - uses: abel0b/setup-premake@v2.4 with: - version: "5.0.0-beta4" + version: "5.0.0-beta4" - name: Generate project files with Premake run: premake5 vs2022 - name: Build project with MSBuild - run: MSBuild /m /p:Configuration=Debug StarStudio.sln + run: MSBuild /m /p:Configuration=Debug StarEngine.sln - name: Upload executable uses: actions/upload-artifact@v4 with: - name: StarStudio-Windows + name: StarEngine-Windows path: "bin/Debug-windows-x86_64/Sandbox/Sandbox.exe" \ No newline at end of file diff --git a/.gitmodules b/.gitmodules index bbadd89c..14661ba8 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,12 +1,13 @@ -[submodule "StarStudio/vendor/spdlog"] - path = StarStudio/vendor/spdlog - url = https://github.com/gabime/spdlog/ -[submodule "StarStudio/vendor/GLFW"] - path = StarStudio/vendor/GLFW - url = https://github.com/TheCherno/glfw/ -[submodule "StarStudio/vendor/imgui"] - path = StarStudio/vendor/imgui +[submodule "StarEngine/vendor/GLFW"] + path = StarEngine/vendor/GLFW + url = https://github.com/starbounded-dev/glfw +[submodule "StarEngine/vendor/spdlog"] + path = StarEngine/vendor/spdlog + url = https://github.com/gabime/spdlog +[submodule "StarEngine/vendor/imgui"] + path = StarEngine/vendor/imgui url = https://github.com/starbounded-dev/imgui -[submodule "StarStudio/vendor/glm"] - path = StarStudio/vendor/glm - url = https://github.com/g-truc/glm + branch = docking +[submodule "StarEngine/vendor/glm"] + path = StarEngine/vendor/glm + url = https://github.com/g-truc/glm \ No newline at end of file diff --git a/Sandbox/src/ExampleLayer.cpp b/Sandbox/src/ExampleLayer.cpp index d507ee22..4b293a86 100644 --- a/Sandbox/src/ExampleLayer.cpp +++ b/Sandbox/src/ExampleLayer.cpp @@ -5,12 +5,12 @@ #include #include -#include "StarStudio.h" +#include "StarEngine.h" ExampleLayer::ExampleLayer() : Layer("ExampleLayer"), m_CameraController(1280.0f / 720.0f) { - m_VertexArray = StarStudio::VertexArray::Create(); + m_VertexArray = StarEngine::VertexArray::Create(); float vertices[3 * 7] = { -0.5f, -0.5f, 0.0f, 0.8f, 0.2f, 0.8f, 1.0f, @@ -18,20 +18,20 @@ ExampleLayer::ExampleLayer() 0.0f, 0.5f, 0.0f, 0.8f, 0.8f, 0.2f, 1.0f }; - StarStudio::Ref vertexBuffer = StarStudio::VertexBuffer::Create(vertices, sizeof(vertices)); - StarStudio::BufferLayout layout = { - { StarStudio::ShaderDataType::Float3, "a_Position" }, - { StarStudio::ShaderDataType::Float4, "a_Color" } + StarEngine::Ref vertexBuffer = StarEngine::VertexBuffer::Create(vertices, sizeof(vertices)); + StarEngine::BufferLayout layout = { + { StarEngine::ShaderDataType::Float3, "a_Position" }, + { StarEngine::ShaderDataType::Float4, "a_Color" } }; vertexBuffer->SetLayout(layout); m_VertexArray->AddVertexBuffer(vertexBuffer); uint32_t indices[3] = { 0, 1, 2 }; - StarStudio::Ref indexBuffer = StarStudio::IndexBuffer::Create(indices, sizeof(indices) / sizeof(uint32_t)); + StarEngine::Ref indexBuffer = StarEngine::IndexBuffer::Create(indices, sizeof(indices) / sizeof(uint32_t)); m_VertexArray->SetIndexBuffer(indexBuffer); - m_SquareVA = StarStudio::VertexArray::Create(); + m_SquareVA = StarEngine::VertexArray::Create(); float squareVertices[5 * 4] = { -0.5f, -0.5f, 0.0f, 0.0f, 0.0f, @@ -40,16 +40,16 @@ ExampleLayer::ExampleLayer() -0.5f, 0.5f, 0.0f, 0.0f, 1.0f }; - StarStudio::Ref squareVB = StarStudio::VertexBuffer::Create(squareVertices, sizeof(squareVertices)); + StarEngine::Ref squareVB = StarEngine::VertexBuffer::Create(squareVertices, sizeof(squareVertices)); squareVB->SetLayout({ - { StarStudio::ShaderDataType::Float3, "a_Position" }, - { StarStudio::ShaderDataType::Float2, "a_TexCoord" } + { StarEngine::ShaderDataType::Float3, "a_Position" }, + { StarEngine::ShaderDataType::Float2, "a_TexCoord" } }); m_SquareVA->AddVertexBuffer(squareVB); uint32_t squareIndices[6] = { 0, 1, 2, 2, 3, 0 }; - StarStudio::Ref squareIB = StarStudio::IndexBuffer::Create(squareIndices, sizeof(squareIndices) / sizeof(uint32_t)); + StarEngine::Ref squareIB = StarEngine::IndexBuffer::Create(squareIndices, sizeof(squareIndices) / sizeof(uint32_t)); m_SquareVA->SetIndexBuffer(squareIB); std::string vertexSrc = R"( @@ -82,7 +82,7 @@ ExampleLayer::ExampleLayer() } )"; - m_Shader = StarStudio::Shader::Create("VertexPosColor", vertexSrc, fragmentSrc); + m_Shader = StarEngine::Shader::Create("VertexPosColor", vertexSrc, fragmentSrc); std::string flatColorShaderVertexSrc = R"( #version 330 core @@ -110,11 +110,11 @@ ExampleLayer::ExampleLayer() } )"; - m_FlatColorShader = StarStudio::Shader::Create("FlatColor", flatColorShaderVertexSrc, flatColorShaderFragmentSrc); + m_FlatColorShader = StarEngine::Shader::Create("FlatColor", flatColorShaderVertexSrc, flatColorShaderFragmentSrc); auto textureShader = m_ShaderLibrary.Load("assets/shaders/Texture.glsl"); - m_Texture = StarStudio::Texture2D::Create("assets/textures/Checkerboard.png"); - m_starLogoTexture = StarStudio::Texture2D::Create("assets/textures/starLogo.png"); + m_Texture = StarEngine::Texture2D::Create("assets/textures/Checkerboard.png"); + m_starLogoTexture = StarEngine::Texture2D::Create("assets/textures/starLogo.png"); textureShader->Bind(); textureShader->SetInt("u_Texture", 0); @@ -130,16 +130,16 @@ void ExampleLayer::OnDetach() } -void ExampleLayer::OnUpdate(StarStudio::Timestep ts) +void ExampleLayer::OnUpdate(StarEngine::Timestep ts) { // Update m_CameraController.OnUpdate(ts); // Render - StarStudio::RenderCommand::SetClearColor({ 0.1f, 0.1f, 0.1f, 1 }); - StarStudio::RenderCommand::Clear(); + StarEngine::RenderCommand::SetClearColor({ 0.1f, 0.1f, 0.1f, 1 }); + StarEngine::RenderCommand::Clear(); - StarStudio::Renderer::BeginScene(m_CameraController.GetCamera()); + StarEngine::Renderer::BeginScene(m_CameraController.GetCamera()); glm::mat4 scale = glm::scale(glm::mat4(1.0f), glm::vec3(0.1f)); @@ -152,21 +152,21 @@ void ExampleLayer::OnUpdate(StarStudio::Timestep ts) { glm::vec3 pos(x * 0.11f, y * 0.11f, 0.0f); glm::mat4 transform = glm::translate(glm::mat4(1.0f), pos) * scale; - StarStudio::Renderer::Submit(m_FlatColorShader, m_SquareVA, transform); + StarEngine::Renderer::Submit(m_FlatColorShader, m_SquareVA, transform); } } auto textureShader = m_ShaderLibrary.Get("Texture"); m_Texture->Bind(); - StarStudio::Renderer::Submit(textureShader, m_SquareVA, glm::scale(glm::mat4(1.0f), glm::vec3(1.5f))); + StarEngine::Renderer::Submit(textureShader, m_SquareVA, glm::scale(glm::mat4(1.0f), glm::vec3(1.5f))); m_starLogoTexture->Bind(); - StarStudio::Renderer::Submit(textureShader, m_SquareVA, glm::scale(glm::mat4(1.0f), glm::vec3(1.5f))); + StarEngine::Renderer::Submit(textureShader, m_SquareVA, glm::scale(glm::mat4(1.0f), glm::vec3(1.5f))); // Triangle // Hazel::Renderer::Submit(m_Shader, m_VertexArray); - StarStudio::Renderer::EndScene(); + StarEngine::Renderer::EndScene(); } void ExampleLayer::OnImGuiRender() @@ -196,7 +196,7 @@ void ExampleLayer::OnImGuiRender() ImGui::End(); } -void ExampleLayer::OnEvent(StarStudio::Event& e) +void ExampleLayer::OnEvent(StarEngine::Event& e) { m_CameraController.OnEvent(e); } \ No newline at end of file diff --git a/Sandbox/src/ExampleLayer.h b/Sandbox/src/ExampleLayer.h index 759a47cb..15f7a9bc 100644 --- a/Sandbox/src/ExampleLayer.h +++ b/Sandbox/src/ExampleLayer.h @@ -1,9 +1,9 @@ #pragma once -#include "StarStudio.h" -#include "StarStudio/Renderer/OrthographicCameraController.h" +#include "StarEngine.h" +#include "StarEngine/Renderer/OrthographicCameraController.h" -class ExampleLayer : public StarStudio::Layer +class ExampleLayer : public StarEngine::Layer { public: @@ -13,19 +13,19 @@ class ExampleLayer : public StarStudio::Layer virtual void OnAttach() override; virtual void OnDetach() override; - void OnUpdate(StarStudio::Timestep ts) override; + void OnUpdate(StarEngine::Timestep ts) override; virtual void OnImGuiRender() override; - void OnEvent(StarStudio::Event& e) override; + void OnEvent(StarEngine::Event& e) override; private: - StarStudio::ShaderLibrary m_ShaderLibrary; - StarStudio::Ref m_Shader; - StarStudio::Ref m_VertexArray; + StarEngine::ShaderLibrary m_ShaderLibrary; + StarEngine::Ref m_Shader; + StarEngine::Ref m_VertexArray; - StarStudio::Ref m_FlatColorShader; - StarStudio::Ref m_SquareVA; + StarEngine::Ref m_FlatColorShader; + StarEngine::Ref m_SquareVA; - StarStudio::Ref m_Texture, m_starLogoTexture; + StarEngine::Ref m_Texture, m_starLogoTexture; - StarStudio::OrthographicCameraController m_CameraController; + StarEngine::OrthographicCameraController m_CameraController; glm::vec3 m_SquareColor = { 0.2f, 0.3f, 0.8f }; }; diff --git a/Sandbox/src/Sandbox2D.cpp b/Sandbox/src/Sandbox2D.cpp index 1006a199..5f88a464 100644 --- a/Sandbox/src/Sandbox2D.cpp +++ b/Sandbox/src/Sandbox2D.cpp @@ -15,59 +15,59 @@ Sandbox2D::Sandbox2D() void Sandbox2D::OnAttach() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); - m_CheckerboardTexture = StarStudio::Texture2D::Create("assets/textures/Checkerboard.png"); + m_CheckerboardTexture = StarEngine::Texture2D::Create("assets/textures/Checkerboard.png"); } void Sandbox2D::OnDetach() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); } -void Sandbox2D::OnUpdate(StarStudio::Timestep ts) +void Sandbox2D::OnUpdate(StarEngine::Timestep ts) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); // Update m_CameraController.OnUpdate(ts); // Render - StarStudio::Renderer2D::ResetStats(); + StarEngine::Renderer2D::ResetStats(); { - SS_PROFILE_SCOPE("Renderer Prep"); - StarStudio::RenderCommand::SetClearColor({ 0.1f, 0.1f, 0.1f, 1 }); - StarStudio::RenderCommand::Clear(); + SE_PROFILE_SCOPE("Renderer Prep"); + StarEngine::RenderCommand::SetClearColor({ 0.1f, 0.1f, 0.1f, 1 }); + StarEngine::RenderCommand::Clear(); } { static float rotation = 0.0f; rotation += ts * 50.0f; - SS_PROFILE_SCOPE("Renderer Draw"); - StarStudio::Renderer2D::BeginScene(m_CameraController.GetCamera()); - StarStudio::Renderer2D::DrawRotatedQuad({ 1.0f, 0.0f }, { 0.8f, 0.8f }, -45.0f, { 0.8f, 0.2f, 0.3f, 1.0f }); - StarStudio::Renderer2D::DrawQuad({ -1.0f, 0.0f }, { 0.8f, 0.8f }, { 0.8f, 0.2f, 0.3f, 1.0f }); - StarStudio::Renderer2D::DrawQuad({ 0.5f, -0.5f }, { 0.5f, 0.75f }, m_SquareColor); - StarStudio::Renderer2D::DrawQuad({ 0.0f, 0.0f, -0.1f }, { 20.0f, 20.0f }, m_CheckerboardTexture, 10.0f); - StarStudio::Renderer2D::DrawRotatedQuad({ -2.0f, 0.0f, 0.0f }, { 1.0f, 1.0f }, rotation, m_CheckerboardTexture, 20.0f); - StarStudio::Renderer2D::EndScene(); + SE_PROFILE_SCOPE("Renderer Draw"); + StarEngine::Renderer2D::BeginScene(m_CameraController.GetCamera()); + StarEngine::Renderer2D::DrawRotatedQuad({ 1.0f, 0.0f }, { 0.8f, 0.8f }, -45.0f, { 0.8f, 0.2f, 0.3f, 1.0f }); + StarEngine::Renderer2D::DrawQuad({ -1.0f, 0.0f }, { 0.8f, 0.8f }, { 0.8f, 0.2f, 0.3f, 1.0f }); + StarEngine::Renderer2D::DrawQuad({ 0.5f, -0.5f }, { 0.5f, 0.75f }, m_SquareColor); + StarEngine::Renderer2D::DrawQuad({ 0.0f, 0.0f, -0.1f }, { 20.0f, 20.0f }, m_CheckerboardTexture, 10.0f); + StarEngine::Renderer2D::DrawRotatedQuad({ -2.0f, 0.0f, 0.0f }, { 1.0f, 1.0f }, rotation, m_CheckerboardTexture, 20.0f); + StarEngine::Renderer2D::EndScene(); - StarStudio::Renderer2D::BeginScene(m_CameraController.GetCamera()); + StarEngine::Renderer2D::BeginScene(m_CameraController.GetCamera()); for (float y = -5.0f; y < 5.0f; y += 0.5f) { for (float x = -5.0f; x < 5.0f; x += 0.5f) { glm::vec4 color = { (x + 5.0f) / 10.0f, 0.4f, (y + 5.0f) / 10.0f, 0.7f }; - StarStudio::Renderer2D::DrawQuad({ x, y }, { 0.45f, 0.45f }, color); + StarEngine::Renderer2D::DrawQuad({ x, y }, { 0.45f, 0.45f }, color); } } - StarStudio::Renderer2D::EndScene(); + StarEngine::Renderer2D::EndScene(); } } void Sandbox2D::OnImGuiRender() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); ImGuiContext& g = *GImGui; ImGuiIO& io = g.IO; @@ -96,12 +96,12 @@ void Sandbox2D::OnImGuiRender() if (ImGui::Checkbox("VSync", &m_VSync)) { // Toggle VSync when the checkbox is clicked - StarStudio::Application::Get().GetWindow().SetVSync(m_VSync); + StarEngine::Application::Get().GetWindow().SetVSync(m_VSync); } ImGui::Text("Settings"); - auto stats = StarStudio::Renderer2D::GetStats(); + auto stats = StarEngine::Renderer2D::GetStats(); ImGui::Text("Renderer2D Stats:"); ImGui::Text("Draw Calls: %d", stats.DrawCalls); ImGui::Text("Quads: %d", stats.QuadCount); @@ -112,7 +112,7 @@ void Sandbox2D::OnImGuiRender() } -void Sandbox2D::OnEvent(StarStudio::Event& e) +void Sandbox2D::OnEvent(StarEngine::Event& e) { m_CameraController.OnEvent(e); } diff --git a/Sandbox/src/Sandbox2D.h b/Sandbox/src/Sandbox2D.h index 745f3e01..d63d1558 100644 --- a/Sandbox/src/Sandbox2D.h +++ b/Sandbox/src/Sandbox2D.h @@ -1,8 +1,9 @@ #pragma once -#include "StarStudio.h" -#include "StarStudio/Renderer/OrthographicCameraController.h" -class Sandbox2D : public StarStudio::Layer +#include "StarEngine.h" +#include "StarEngine/Renderer/OrthographicCameraController.h" + +class Sandbox2D : public StarEngine::Layer { public: Sandbox2D(); @@ -11,19 +12,19 @@ class Sandbox2D : public StarStudio::Layer virtual void OnAttach() override; virtual void OnDetach() override; - void OnUpdate(StarStudio::Timestep ts) override; + void OnUpdate(StarEngine::Timestep ts) override; virtual void OnImGuiRender() override; - void OnEvent(StarStudio::Event& e) override; + void OnEvent(StarEngine::Event& e) override; private: - StarStudio::OrthographicCameraController m_CameraController; + StarEngine::OrthographicCameraController m_CameraController; bool m_VSync = true; // Temp - StarStudio::Ref m_SquareVA; - StarStudio::Ref m_FlatColorShader; + StarEngine::Ref m_SquareVA; + StarEngine::Ref m_FlatColorShader; - StarStudio::Ref m_CheckerboardTexture; + StarEngine::Ref m_CheckerboardTexture; glm::vec4 m_SquareColor = { 0.2f, 0.3f, 0.8f, 1.0f }; }; diff --git a/Sandbox/src/SandboxApp.cpp b/Sandbox/src/SandboxApp.cpp index 3fe00508..3edfea0d 100644 --- a/Sandbox/src/SandboxApp.cpp +++ b/Sandbox/src/SandboxApp.cpp @@ -1,12 +1,12 @@ -#include -#include +#include +#include -#include "StarStudio/Renderer/OrthographicCameraController.h" +#include "StarEngine/Renderer/OrthographicCameraController.h" #include "Sandbox2D.h" #include "ExampleLayer.h" -class Sandbox : public StarStudio::Application +class Sandbox : public StarEngine::Application { public: Sandbox() @@ -22,7 +22,7 @@ class Sandbox : public StarStudio::Application }; -StarStudio::Application* StarStudio::CreateApplication() +StarEngine::Application* StarEngine::CreateApplication() { return new Sandbox(); } \ No newline at end of file diff --git a/StarStudio/src/Platform/OpenGL/OpenGLBuffer.cpp b/StarEngine/src/Platform/OpenGL/OpenGLBuffer.cpp similarity index 88% rename from StarStudio/src/Platform/OpenGL/OpenGLBuffer.cpp rename to StarEngine/src/Platform/OpenGL/OpenGLBuffer.cpp index 7e02da6e..f19891ae 100644 --- a/StarStudio/src/Platform/OpenGL/OpenGLBuffer.cpp +++ b/StarEngine/src/Platform/OpenGL/OpenGLBuffer.cpp @@ -1,9 +1,9 @@ -#include "sspch.h" +#include "sepch.h" #include "Platform/OpenGL/OpenGLBuffer.h" #include -namespace StarStudio { +namespace StarEngine { ///////////////////////////////////////////////////////////////////////////// // VertexBuffer ///////////////////////////////////////////////////////////// @@ -11,7 +11,7 @@ namespace StarStudio { OpenGLVertexBuffer::OpenGLVertexBuffer(uint32_t size) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glCreateBuffers(1, &m_RendererID); glBindBuffer(GL_ARRAY_BUFFER, m_RendererID); glBufferData(GL_ARRAY_BUFFER, size, nullptr, GL_DYNAMIC_DRAW); @@ -19,7 +19,7 @@ namespace StarStudio { OpenGLVertexBuffer::OpenGLVertexBuffer(float* vertices, uint32_t size) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glCreateBuffers(1, &m_RendererID); glBindBuffer(GL_ARRAY_BUFFER, m_RendererID); @@ -28,21 +28,21 @@ namespace StarStudio { OpenGLVertexBuffer::~OpenGLVertexBuffer() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glDeleteBuffers(1, &m_RendererID); } void OpenGLVertexBuffer::Bind() const { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glBindBuffer(GL_ARRAY_BUFFER, m_RendererID); } void OpenGLVertexBuffer::Unbind() const { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glBindBuffer(GL_ARRAY_BUFFER, 0); } @@ -60,7 +60,7 @@ namespace StarStudio { OpenGLIndexBuffer::OpenGLIndexBuffer(uint32_t* indices, uint32_t count) : m_Count(count) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glCreateBuffers(1, &m_RendererID); @@ -72,21 +72,21 @@ namespace StarStudio { OpenGLIndexBuffer::~OpenGLIndexBuffer() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glDeleteBuffers(1, &m_RendererID); } void OpenGLIndexBuffer::Bind() const { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, m_RendererID); } void OpenGLIndexBuffer::Unbind() const { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0); } diff --git a/StarStudio/src/Platform/OpenGL/OpenGLBuffer.h b/StarEngine/src/Platform/OpenGL/OpenGLBuffer.h similarity index 93% rename from StarStudio/src/Platform/OpenGL/OpenGLBuffer.h rename to StarEngine/src/Platform/OpenGL/OpenGLBuffer.h index a7d37a0f..a9491749 100644 --- a/StarStudio/src/Platform/OpenGL/OpenGLBuffer.h +++ b/StarEngine/src/Platform/OpenGL/OpenGLBuffer.h @@ -1,8 +1,8 @@ #pragma once -#include "StarStudio/Renderer/Buffer.h" +#include "StarEngine/Renderer/Buffer.h" -namespace StarStudio { +namespace StarEngine { class OpenGLVertexBuffer : public VertexBuffer { diff --git a/StarStudio/src/Platform/OpenGL/OpenGLContext.cpp b/StarEngine/src/Platform/OpenGL/OpenGLContext.cpp similarity index 58% rename from StarStudio/src/Platform/OpenGL/OpenGLContext.cpp rename to StarEngine/src/Platform/OpenGL/OpenGLContext.cpp index ca15db85..830155c1 100644 --- a/StarStudio/src/Platform/OpenGL/OpenGLContext.cpp +++ b/StarEngine/src/Platform/OpenGL/OpenGLContext.cpp @@ -1,42 +1,42 @@ -#include "sspch.h" +#include "sepch.h" #include "Platform/OpenGL/OpenGLContext.h" #include #include -namespace StarStudio { +namespace StarEngine { OpenGLContext::OpenGLContext(GLFWwindow* windowHandle) : m_WindowHandle(windowHandle) { - SS_CORE_ASSERT(windowHandle, "Window handle is null!") + SE_CORE_ASSERT(windowHandle, "Window handle is null!") } void OpenGLContext::Init() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glfwMakeContextCurrent(m_WindowHandle); int status = gladLoadGLLoader((GLADloadproc)glfwGetProcAddress); - SS_CORE_ASSERT(status, "Failed to initialize Glad!"); + SE_CORE_ASSERT(status, "Failed to initialize Glad!"); - SS_CORE_INFO("OpenGL Info:"); - SS_CORE_INFO(" Vendor: {0}", (const char*)glGetString(GL_VENDOR)); - SS_CORE_INFO(" Renderer: {0}", (const char*)glGetString(GL_RENDERER)); - SS_CORE_INFO(" Version: {0}", (const char*)glGetString(GL_VERSION)); + SE_CORE_INFO("OpenGL Info:"); + SE_CORE_INFO(" Vendor: {0}", (const char*)glGetString(GL_VENDOR)); + SE_CORE_INFO(" Renderer: {0}", (const char*)glGetString(GL_RENDERER)); + SE_CORE_INFO(" Version: {0}", (const char*)glGetString(GL_VERSION)); #ifdef SS_ENABLE_ASSERTS int versionMajor; int versionMinor; glGetIntegerv(GL_MAJOR_VERSION, &versionMajor); glGetIntegerv(GL_MINOR_VERSION, &versionMinor); - SS_CORE_ASSERT(versionMajor > 4 || (versionMajor == 4 && versionMinor >= 5), "StarStudio requires at least OpenGL version 4.5!"); + SE_CORE_ASSERT(versionMajor > 4 || (versionMajor == 4 && versionMinor >= 5), "StarStudio requires at least OpenGL version 4.5!"); #endif } void OpenGLContext::SwapBuffers() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glfwSwapBuffers(m_WindowHandle); } diff --git a/StarStudio/src/Platform/OpenGL/OpenGLContext.h b/StarEngine/src/Platform/OpenGL/OpenGLContext.h similarity index 77% rename from StarStudio/src/Platform/OpenGL/OpenGLContext.h rename to StarEngine/src/Platform/OpenGL/OpenGLContext.h index 6b49e7ec..8c084727 100644 --- a/StarStudio/src/Platform/OpenGL/OpenGLContext.h +++ b/StarEngine/src/Platform/OpenGL/OpenGLContext.h @@ -1,10 +1,10 @@ #pragma once -#include "StarStudio/Renderer/GraphicsContext.h" +#include "StarEngine/Renderer/GraphicsContext.h" struct GLFWwindow; -namespace StarStudio { +namespace StarEngine { class OpenGLContext : public GraphicsContext { diff --git a/StarStudio/src/Platform/OpenGL/OpenGLRendererAPI.cpp b/StarEngine/src/Platform/OpenGL/OpenGLRendererAPI.cpp similarity index 77% rename from StarStudio/src/Platform/OpenGL/OpenGLRendererAPI.cpp rename to StarEngine/src/Platform/OpenGL/OpenGLRendererAPI.cpp index b51b80fe..36411875 100644 --- a/StarStudio/src/Platform/OpenGL/OpenGLRendererAPI.cpp +++ b/StarEngine/src/Platform/OpenGL/OpenGLRendererAPI.cpp @@ -1,9 +1,9 @@ -#include "sspch.h" +#include "sepch.h" #include "Platform/OpenGL/OpenGLRendererAPI.h" #include -namespace StarStudio +namespace StarEngine { void OpenGLMessageCallback( unsigned source, @@ -16,20 +16,20 @@ namespace StarStudio { switch (severity) { - case GL_DEBUG_SEVERITY_HIGH: SS_CORE_CRITICAL(message); return; - case GL_DEBUG_SEVERITY_MEDIUM: SS_CORE_ERROR(message); return; - case GL_DEBUG_SEVERITY_LOW: SS_CORE_WARN(message); return; - case GL_DEBUG_SEVERITY_NOTIFICATION: SS_CORE_TRACE(message); return; + case GL_DEBUG_SEVERITY_HIGH: SE_CORE_CRITICAL(message); return; + case GL_DEBUG_SEVERITY_MEDIUM: SE_CORE_ERROR(message); return; + case GL_DEBUG_SEVERITY_LOW: SE_CORE_WARN(message); return; + case GL_DEBUG_SEVERITY_NOTIFICATION: SE_CORE_TRACE(message); return; } - SS_CORE_ASSERT(false, "Unknown severity level!"); + SE_CORE_ASSERT(false, "Unknown severity level!"); } void OpenGLRendererAPI::Init() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); - #ifdef SS_DEBUG + #ifdef SE_DEBUG glEnable(GL_DEBUG_OUTPUT); glEnable(GL_DEBUG_OUTPUT_SYNCHRONOUS); glDebugMessageCallback(OpenGLMessageCallback, nullptr); diff --git a/StarStudio/src/Platform/OpenGL/OpenGLRendererAPI.h b/StarEngine/src/Platform/OpenGL/OpenGLRendererAPI.h similarity index 85% rename from StarStudio/src/Platform/OpenGL/OpenGLRendererAPI.h rename to StarEngine/src/Platform/OpenGL/OpenGLRendererAPI.h index 00dd3783..f8f9ceb1 100644 --- a/StarStudio/src/Platform/OpenGL/OpenGLRendererAPI.h +++ b/StarEngine/src/Platform/OpenGL/OpenGLRendererAPI.h @@ -1,8 +1,8 @@ #pragma once -#include "StarStudio/Renderer/RendererAPI.h" +#include "StarEngine/Renderer/RendererAPI.h" -namespace StarStudio +namespace StarEngine { class OpenGLRendererAPI : public RendererAPI { diff --git a/StarStudio/src/Platform/OpenGL/OpenGLShader.cpp b/StarEngine/src/Platform/OpenGL/OpenGLShader.cpp similarity index 87% rename from StarStudio/src/Platform/OpenGL/OpenGLShader.cpp rename to StarEngine/src/Platform/OpenGL/OpenGLShader.cpp index 9fa48517..82910170 100644 --- a/StarStudio/src/Platform/OpenGL/OpenGLShader.cpp +++ b/StarEngine/src/Platform/OpenGL/OpenGLShader.cpp @@ -1,11 +1,11 @@ -#include "sspch.h" +#include "sepch.h" #include "Platform/OpenGL/OpenGLShader.h" #include #include #include -namespace StarStudio { +namespace StarEngine { static GLenum ShaderTypeFromString(const std::string& type) { @@ -14,13 +14,13 @@ namespace StarStudio { if (type == "fragment" || type == "pixel") return GL_FRAGMENT_SHADER; - SS_CORE_ASSERT(false, "Unknown shader type!"); + SE_CORE_ASSERT(false, "Unknown shader type!"); return 0; } OpenGLShader::OpenGLShader(const std::string& filepath) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); std::string source = ReadFile(filepath); auto shaderSources = PreProcess(source); @@ -37,7 +37,7 @@ namespace StarStudio { OpenGLShader::OpenGLShader(const std::string& name, const std::string& vertexSrc, const std::string& fragmentSrc) : m_Name(name) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); std::unordered_map sources; sources[GL_VERTEX_SHADER] = vertexSrc; @@ -47,14 +47,14 @@ namespace StarStudio { OpenGLShader::~OpenGLShader() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glDeleteProgram(m_RendererID); } std::string OpenGLShader::ReadFile(const std::string& filepath) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); std::string result; std::ifstream in(filepath, std::ios::in | std::ios::binary); @@ -71,12 +71,12 @@ namespace StarStudio { } else { - SS_CORE_ERROR("Could not read from file '{0}'", filepath); + SE_CORE_ERROR("Could not read from file '{0}'", filepath); } } else { - SS_CORE_ERROR("Could not open file '{0}'", filepath); + SE_CORE_ERROR("Could not open file '{0}'", filepath); } return result; @@ -84,7 +84,7 @@ namespace StarStudio { std::unordered_map OpenGLShader::PreProcess(const std::string& source) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); std::unordered_map shaderSources; @@ -94,13 +94,13 @@ namespace StarStudio { while (pos != std::string::npos) { size_t eol = source.find_first_of("\r\n", pos); //End of shader type declaration line - SS_CORE_ASSERT(eol != std::string::npos, "Syntax error"); + SE_CORE_ASSERT(eol != std::string::npos, "Syntax error"); size_t begin = pos + typeTokenLength + 1; //Start of shader type name (after "#type " keyword) std::string type = source.substr(begin, eol - begin); - SS_CORE_ASSERT(ShaderTypeFromString(type), "Invalid shader type specified"); + SE_CORE_ASSERT(ShaderTypeFromString(type), "Invalid shader type specified"); size_t nextLinePos = source.find_first_not_of("\r\n", eol); //Start of shader code after shader type declaration line - SS_CORE_ASSERT(nextLinePos != std::string::npos, "Syntax error"); + SE_CORE_ASSERT(nextLinePos != std::string::npos, "Syntax error"); pos = source.find(typeToken, nextLinePos); //Start of next shader type declaration line shaderSources[ShaderTypeFromString(type)] = (pos == std::string::npos) ? source.substr(nextLinePos) : source.substr(nextLinePos, pos - nextLinePos); @@ -111,10 +111,10 @@ namespace StarStudio { void OpenGLShader::Compile(const std::unordered_map& shaderSources) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); GLuint program = glCreateProgram(); - SS_CORE_ASSERT(shaderSources.size() <= 2, "We only support 2 shaders for now"); + SE_CORE_ASSERT(shaderSources.size() <= 2, "We only support 2 shaders for now"); std::array glShaderIDs; int glShaderIDIndex = 0; for (auto& kv : shaderSources) @@ -141,8 +141,8 @@ namespace StarStudio { glDeleteShader(shader); - SS_CORE_ERROR("{0}", infoLog.data()); - SS_CORE_ASSERT(false, "Shader compilation failure!"); + SE_CORE_ERROR("{0}", infoLog.data()); + SE_CORE_ASSERT(false, "Shader compilation failure!"); break; } @@ -169,8 +169,8 @@ namespace StarStudio { for (auto id : glShaderIDs) glDeleteShader(id); - SS_CORE_ERROR("{0}", infoLog.data()); - SS_CORE_ASSERT(false, "Shader link failure!"); + SE_CORE_ERROR("{0}", infoLog.data()); + SE_CORE_ASSERT(false, "Shader link failure!"); return; } @@ -184,21 +184,21 @@ namespace StarStudio { void OpenGLShader::Bind() const { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glUseProgram(m_RendererID); } void OpenGLShader::Unbind() const { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glUseProgram(0); } void OpenGLShader::SetInt(const std::string& name, int value) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); UploadUniformInt(name, value); } @@ -210,27 +210,27 @@ namespace StarStudio { void OpenGLShader::SetFloat(const std::string& name, float value) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); UploadUniformFloat(name, value); } void OpenGLShader::SetFloat3(const std::string& name, const glm::vec3& value) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); UploadUniformFloat3(name, value); } void OpenGLShader::SetFloat4(const std::string& name, const glm::vec4& value) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); UploadUniformFloat4(name, value); } void OpenGLShader::SetMat4(const std::string& name, const glm::mat4& value) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); UploadUniformMat4(name, value); } diff --git a/StarStudio/src/Platform/OpenGL/OpenGLShader.h b/StarEngine/src/Platform/OpenGL/OpenGLShader.h similarity index 94% rename from StarStudio/src/Platform/OpenGL/OpenGLShader.h rename to StarEngine/src/Platform/OpenGL/OpenGLShader.h index d5210ec3..b4183fb1 100644 --- a/StarStudio/src/Platform/OpenGL/OpenGLShader.h +++ b/StarEngine/src/Platform/OpenGL/OpenGLShader.h @@ -1,14 +1,14 @@ #pragma once -#include "StarStudio/Renderer/Shader.h" +#include "StarEngine/Renderer/Shader.h" #include //TODO REMOVE THIS typedef unsigned int GLenum; -namespace StarStudio { +namespace StarEngine { - class OpenGLShader : public StarStudio::Shader + class OpenGLShader : public StarEngine::Shader { public: diff --git a/StarStudio/src/Platform/OpenGL/OpenGLTexture.cpp b/StarEngine/src/Platform/OpenGL/OpenGLTexture.cpp similarity index 84% rename from StarStudio/src/Platform/OpenGL/OpenGLTexture.cpp rename to StarEngine/src/Platform/OpenGL/OpenGLTexture.cpp index 8036d9a2..96da34c6 100644 --- a/StarStudio/src/Platform/OpenGL/OpenGLTexture.cpp +++ b/StarEngine/src/Platform/OpenGL/OpenGLTexture.cpp @@ -1,14 +1,14 @@ -#include "sspch.h" +#include "sepch.h" #include "Platform/OpenGL/OpenGLTexture.h" #include -namespace StarStudio { +namespace StarEngine { OpenGLTexture2D::OpenGLTexture2D(uint32_t width, uint32_t height) : m_Width(width), m_Height(height) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); m_InternalFormat = GL_RGBA8; m_DataFormat = GL_RGBA; @@ -26,18 +26,18 @@ namespace StarStudio { OpenGLTexture2D::OpenGLTexture2D(const std::string& path) : m_Path(path) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); int width, height, channels; stbi_set_flip_vertically_on_load(1); stbi_uc* data = nullptr; { - SS_PROFILE_SCOPE("stbi_load - OpenGLTexture2D::OpenGLTexture2D(const std:string&)"); + SE_PROFILE_SCOPE("stbi_load - OpenGLTexture2D::OpenGLTexture2D(const std:string&)"); data = stbi_load(path.c_str(), &width, &height, &channels, 0); } - SS_CORE_ASSERT(data, "Failed to load image!"); + SE_CORE_ASSERT(data, "Failed to load image!"); m_Width = width; m_Height = height; @@ -57,7 +57,7 @@ namespace StarStudio { m_InternalFormat = internalFormat; m_DataFormat = dataFormat; - SS_CORE_ASSERT(internalFormat & dataFormat, "Format not supported!"); + SE_CORE_ASSERT(internalFormat & dataFormat, "Format not supported!"); glCreateTextures(GL_TEXTURE_2D, 1, &m_RendererID); @@ -76,23 +76,23 @@ namespace StarStudio { void OpenGLTexture2D::SetData(void* data, uint32_t size) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); uint32_t bpp = m_DataFormat == GL_RGBA ? 4 : 3; - SS_CORE_ASSERT(size == m_Width * m_Height * bpp, "Data must be entire texture!"); + SE_CORE_ASSERT(size == m_Width * m_Height * bpp, "Data must be entire texture!"); glTextureSubImage2D(m_RendererID, 0, 0, 0, m_Width, m_Height, m_DataFormat, GL_UNSIGNED_BYTE, data); } OpenGLTexture2D::~OpenGLTexture2D() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glDeleteTextures(1, &m_RendererID); } void OpenGLTexture2D::Bind(uint32_t slot) const { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glBindTextureUnit(slot, m_RendererID); } diff --git a/StarStudio/src/Platform/OpenGL/OpenGLTexture.h b/StarEngine/src/Platform/OpenGL/OpenGLTexture.h similarity index 92% rename from StarStudio/src/Platform/OpenGL/OpenGLTexture.h rename to StarEngine/src/Platform/OpenGL/OpenGLTexture.h index dbcc51b8..ca831930 100644 --- a/StarStudio/src/Platform/OpenGL/OpenGLTexture.h +++ b/StarEngine/src/Platform/OpenGL/OpenGLTexture.h @@ -1,10 +1,10 @@ #pragma once -#include "StarStudio/Renderer/Texture.h" +#include "StarEngine/Renderer/Texture.h" #include -namespace StarStudio { +namespace StarEngine { class OpenGLTexture2D : public Texture2D { diff --git a/StarStudio/src/Platform/OpenGL/OpenGLVertexArray.cpp b/StarEngine/src/Platform/OpenGL/OpenGLVertexArray.cpp similarity index 88% rename from StarStudio/src/Platform/OpenGL/OpenGLVertexArray.cpp rename to StarEngine/src/Platform/OpenGL/OpenGLVertexArray.cpp index 9a5c34db..46a3bdc7 100644 --- a/StarStudio/src/Platform/OpenGL/OpenGLVertexArray.cpp +++ b/StarEngine/src/Platform/OpenGL/OpenGLVertexArray.cpp @@ -1,10 +1,9 @@ -#include "sspch.h" +#include "sepch.h" #include "Platform/OpenGL/OpenGLVertexArray.h" - #include -namespace StarStudio { +namespace StarEngine { static GLenum ShaderDataTypeToOpenGLBaseType(ShaderDataType type) { @@ -22,38 +21,38 @@ namespace StarStudio { case ShaderDataType::Bool: return GL_BOOL; } - SS_CORE_ASSERT(false, "Unknown ShaderDataType!"); + SE_CORE_ASSERT(false, "Unknown ShaderDataType!"); return 0; } OpenGLVertexArray::OpenGLVertexArray() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glCreateVertexArrays(1, &m_RendererID); } OpenGLVertexArray::~OpenGLVertexArray() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glDeleteVertexArrays(1, &m_RendererID); } void OpenGLVertexArray::Bind() const { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glBindVertexArray(m_RendererID); } void OpenGLVertexArray::Unbind() const { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glBindVertexArray(0); } void OpenGLVertexArray::AddVertexBuffer(const Ref& vertexBuffer) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); - SS_CORE_ASSERT(vertexBuffer->GetLayout().GetElements().size(), "Vertex Buffer has no layout!"); + SE_CORE_ASSERT(vertexBuffer->GetLayout().GetElements().size(), "Vertex Buffer has no layout!"); glBindVertexArray(m_RendererID); vertexBuffer->Bind(); @@ -103,7 +102,7 @@ namespace StarStudio { break; } default: - SS_CORE_ASSERT(false, "Unknown ShaderDataType!"); + SE_CORE_ASSERT(false, "Unknown ShaderDataType!"); } } @@ -111,7 +110,7 @@ namespace StarStudio { } void OpenGLVertexArray::SetIndexBuffer(const Ref& indexBuffer) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glBindVertexArray(m_RendererID); indexBuffer->Bind(); diff --git a/StarStudio/src/Platform/OpenGL/OpenGLVertexArray.h b/StarEngine/src/Platform/OpenGL/OpenGLVertexArray.h similarity index 91% rename from StarStudio/src/Platform/OpenGL/OpenGLVertexArray.h rename to StarEngine/src/Platform/OpenGL/OpenGLVertexArray.h index 77df7467..d6c81b1c 100644 --- a/StarStudio/src/Platform/OpenGL/OpenGLVertexArray.h +++ b/StarEngine/src/Platform/OpenGL/OpenGLVertexArray.h @@ -1,8 +1,8 @@ #pragma once -#include "StarStudio/Renderer/VertexArray.h" +#include "StarEngine/Renderer/VertexArray.h" -namespace StarStudio { +namespace StarEngine { class OpenGLVertexArray : public VertexArray { diff --git a/StarStudio/src/Platform/Windows/WindowsInput.cpp b/StarEngine/src/Platform/Windows/WindowsInput.cpp similarity index 92% rename from StarStudio/src/Platform/Windows/WindowsInput.cpp rename to StarEngine/src/Platform/Windows/WindowsInput.cpp index 293e135b..60129164 100644 --- a/StarStudio/src/Platform/Windows/WindowsInput.cpp +++ b/StarEngine/src/Platform/Windows/WindowsInput.cpp @@ -1,10 +1,10 @@ -#include "sspch.h" +#include "sepch.h" #include "Platform/Windows/WindowsInput.h" -#include "StarStudio/Core/Application.h" +#include "StarEngine/Core/Application.h" #include -namespace StarStudio { +namespace StarEngine { bool WindowsInput::IsKeyPressedImpl(KeyCode key) { diff --git a/StarStudio/src/Platform/Windows/WindowsInput.h b/StarEngine/src/Platform/Windows/WindowsInput.h similarity index 85% rename from StarStudio/src/Platform/Windows/WindowsInput.h rename to StarEngine/src/Platform/Windows/WindowsInput.h index e55b9363..9be9037d 100644 --- a/StarStudio/src/Platform/Windows/WindowsInput.h +++ b/StarEngine/src/Platform/Windows/WindowsInput.h @@ -1,8 +1,8 @@ #pragma once -#include "StarStudio/Core/Input.h" +#include "StarEngine/Core/Input.h" -namespace StarStudio { +namespace StarEngine { class WindowsInput : public Input { protected: diff --git a/StarStudio/src/Platform/Windows/WindowsWindow.cpp b/StarEngine/src/Platform/Windows/WindowsWindow.cpp similarity index 85% rename from StarStudio/src/Platform/Windows/WindowsWindow.cpp rename to StarEngine/src/Platform/Windows/WindowsWindow.cpp index d18c825d..839b550c 100644 --- a/StarStudio/src/Platform/Windows/WindowsWindow.cpp +++ b/StarEngine/src/Platform/Windows/WindowsWindow.cpp @@ -1,61 +1,61 @@ -#include "sspch.h" +#include "sepch.h" #include "Platform/Windows/WindowsWindow.h" -#include "StarStudio/Core/Input.h" +#include "StarEngine/Core/Input.h" -#include "StarStudio/Events/ApplicationEvent.h" -#include "StarStudio/Events/MouseEvent.h" -#include "StarStudio/Events/KeyEvent.h" +#include "StarEngine/Events/ApplicationEvent.h" +#include "StarEngine/Events/MouseEvent.h" +#include "StarEngine/Events/KeyEvent.h" -#include "StarStudio/Renderer/Renderer.h" +#include "StarEngine/Renderer/Renderer.h" #include "Platform/OpenGL/OpenGLContext.h" -namespace StarStudio { +namespace StarEngine { static uint8_t s_GLFWWindowCount = 0; static void GLFWErrorCallback(int error, const char* description) { - SS_CORE_ERROR("GLFW Error ({0}): {1}", error, description); + SE_CORE_ERROR("GLFW Error ({0}): {1}", error, description); } WindowsWindow::WindowsWindow(const WindowProps& props) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); Init(props); } WindowsWindow::~WindowsWindow() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); Shutdown(); } void WindowsWindow::Init(const WindowProps& props) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); m_Data.Title = props.Title; m_Data.Width = props.Width; m_Data.Height = props.Height; - SS_CORE_INFO("Creating window {0} ({1}, {2})", props.Title, props.Width, props.Height); + SE_CORE_INFO("Creating window {0} ({1}, {2})", props.Title, props.Width, props.Height); if (s_GLFWWindowCount == 0) { - SS_PROFILE_SCOPE("glfwInit"); + SE_PROFILE_SCOPE("glfwInit"); int success = glfwInit(); - SS_CORE_ASSERT(success, "Could not initialize GLFW!"); + SE_CORE_ASSERT(success, "Could not initialize GLFW!"); glfwSetErrorCallback(GLFWErrorCallback); } { - SS_PROFILE_SCOPE("glfwCreateWindow"); + SE_PROFILE_SCOPE("glfwCreateWindow"); - #if defined(SS_DEBUG) + #if defined(SE_DEBUG) if (Renderer::GetAPI() == RendererAPI::API::OpenGL) glfwWindowHint(GLFW_OPENGL_DEBUG_CONTEXT, GLFW_TRUE); #endif @@ -163,7 +163,7 @@ namespace StarStudio { void WindowsWindow::Shutdown() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glfwDestroyWindow(m_Window); --s_GLFWWindowCount; @@ -176,7 +176,7 @@ namespace StarStudio { void WindowsWindow::OnUpdate() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glfwPollEvents(); m_Context->SwapBuffers(); @@ -184,7 +184,7 @@ namespace StarStudio { void WindowsWindow::SetVSync(bool enabled) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); if (enabled) glfwSwapInterval(1); diff --git a/StarStudio/src/Platform/Windows/WindowsWindow.h b/StarEngine/src/Platform/Windows/WindowsWindow.h similarity index 89% rename from StarStudio/src/Platform/Windows/WindowsWindow.h rename to StarEngine/src/Platform/Windows/WindowsWindow.h index cdb75228..455677f5 100644 --- a/StarStudio/src/Platform/Windows/WindowsWindow.h +++ b/StarEngine/src/Platform/Windows/WindowsWindow.h @@ -1,11 +1,11 @@ #pragma once -#include "StarStudio/Core/Window.h" -#include "StarStudio/Renderer/GraphicsContext.h" +#include "StarEngine/Core/Window.h" +#include "StarEngine/Renderer/GraphicsContext.h" #include -namespace StarStudio { +namespace StarEngine { class WindowsWindow : public Window { diff --git a/StarEngine/src/StarEngine.h b/StarEngine/src/StarEngine.h new file mode 100644 index 00000000..458ccef8 --- /dev/null +++ b/StarEngine/src/StarEngine.h @@ -0,0 +1,29 @@ +#pragma once + +// for use by StarEngine applications +#include "StarEngine/Core/Application.h" +#include "StarEngine/Core/Layer.h" +#include "StarEngine/Core/Log.h" + +#include "StarEngine/Core/Timestep.h" + +#include "StarEngine/ImGui/ImGuiLayer.h" + +// ---Input------------------------- +#include "StarEngine/Core/Input.h" +#include "StarEngine/Core/KeyCodes.h" +#include "StarEngine/Core/MouseCodes.h" +// --------------------------------- + +// ---Renderer------------------------ +#include "StarEngine/Renderer/Renderer.h" +#include "StarEngine/Renderer/Renderer2D.h" +#include "StarEngine/Renderer/RenderCommand.h" + +#include "StarEngine/Renderer/Buffer.h" +#include "StarEngine/Renderer/Shader.h" +#include "StarEngine/Renderer/Texture.h" +#include "StarEngine/Renderer/VertexArray.h" + +#include "StarEngine/Renderer/OrthographicCamera.h" +// ----------------------------------- \ No newline at end of file diff --git a/StarStudio/src/StarStudio/Core/Application.cpp b/StarEngine/src/StarEngine/Core/Application.cpp similarity index 68% rename from StarStudio/src/StarStudio/Core/Application.cpp rename to StarEngine/src/StarEngine/Core/Application.cpp index 602d9f28..e2e3b0b3 100644 --- a/StarStudio/src/StarStudio/Core/Application.cpp +++ b/StarEngine/src/StarEngine/Core/Application.cpp @@ -1,25 +1,25 @@ -#include "sspch.h" -#include "StarStudio/Core/Application.h" +#include "sepch.h" +#include "StarEngine/Core/Application.h" -#include "StarStudio/Core/Log.h" +#include "StarEngine/Core/Log.h" -#include "StarStudio/Core/Input.h" -#include "StarStudio/Renderer/Renderer.h" +#include "StarEngine/Core/Input.h" +#include "StarEngine/Renderer/Renderer.h" #include -namespace StarStudio +namespace StarEngine { Application* Application::s_Instance = nullptr; Application::Application() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); - SS_CORE_ASSERT(!s_Instance, "Application already exists!"); + SE_CORE_ASSERT(!s_Instance, "Application already exists!"); s_Instance = this; m_Window = Window::Create(); - m_Window->SetEventCallback(SS_BIND_EVENT_FN(Application::OnEvent)); + m_Window->SetEventCallback(SE_BIND_EVENT_FN(Application::OnEvent)); Renderer::Init(); @@ -29,14 +29,14 @@ namespace StarStudio Application::~Application() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); Renderer::Shutdown(); } void Application::PushLayer(Layer* layer) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); m_LayerStack.PushLayer(layer); layer->OnAttach(); @@ -44,7 +44,7 @@ namespace StarStudio void Application::PushOverlay(Layer* layer) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); m_LayerStack.PushOverlay(layer); layer->OnAttach(); @@ -52,11 +52,11 @@ namespace StarStudio void Application::OnEvent(Event& e) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); EventDispatcher dispatcher(e); - dispatcher.Dispatch(SS_BIND_EVENT_FN(Application::OnWindowClose)); - dispatcher.Dispatch(SS_BIND_EVENT_FN(Application::OnWindowResize)); + dispatcher.Dispatch(SE_BIND_EVENT_FN(Application::OnWindowClose)); + dispatcher.Dispatch(SE_BIND_EVENT_FN(Application::OnWindowResize)); for (auto it = m_LayerStack.rbegin(); it != m_LayerStack.rend(); ++it) { @@ -68,11 +68,11 @@ namespace StarStudio void Application::Run() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); while (m_Running) { - SS_PROFILE_SCOPE("RunLoop"); + SE_PROFILE_SCOPE("RunLoop"); float time = (float)glfwGetTime(); Timestep timestep = time - m_LastFrameTime; @@ -81,7 +81,7 @@ namespace StarStudio if (!m_Minimized) { { - SS_PROFILE_SCOPE("LayerStack OnUpdate"); + SE_PROFILE_SCOPE("LayerStack OnUpdate"); for (Layer* layer : m_LayerStack) layer->OnUpdate(timestep); @@ -89,7 +89,7 @@ namespace StarStudio m_ImGuiLayer->Begin(); { - SS_PROFILE_SCOPE("LayerStack OnImGuiRender"); + SE_PROFILE_SCOPE("LayerStack OnImGuiRender"); for (Layer* layer : m_LayerStack) layer->OnImGuiRender(); @@ -109,7 +109,7 @@ namespace StarStudio bool Application::OnWindowResize(WindowResizeEvent& e) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); if (e.GetWidth() == 0 || e.GetHeight() == 0) { diff --git a/StarStudio/src/StarStudio/Core/Application.h b/StarEngine/src/StarEngine/Core/Application.h similarity index 73% rename from StarStudio/src/StarStudio/Core/Application.h rename to StarEngine/src/StarEngine/Core/Application.h index 494e414c..e4fa481e 100644 --- a/StarStudio/src/StarStudio/Core/Application.h +++ b/StarEngine/src/StarEngine/Core/Application.h @@ -1,19 +1,19 @@ #pragma once -#include "StarStudio/Core/Base.h" +#include "StarEngine/Core/Base.h" -#include "StarStudio/Core/Window.h" -#include "StarStudio/Core/LayerStack.h" -#include "StarStudio/Events/Event.h" -#include "StarStudio/Events/ApplicationEvent.h" +#include "StarEngine/Core/Window.h" +#include "StarEngine/Core/LayerStack.h" +#include "StarEngine/Events/Event.h" +#include "StarEngine/Events/ApplicationEvent.h" -#include "StarStudio/Core/Timestep.h" +#include "StarEngine/Core/Timestep.h" -#include "StarStudio/ImGui/ImGuiLayer.h" +#include "StarEngine/ImGui/ImGuiLayer.h" int main(int argc, char** argv); -namespace StarStudio +namespace StarEngine { class Application { diff --git a/StarStudio/src/StarStudio/Core/Base.h b/StarEngine/src/StarEngine/Core/Base.h similarity index 68% rename from StarStudio/src/StarStudio/Core/Base.h rename to StarEngine/src/StarEngine/Core/Base.h index c9ecd711..87b86314 100644 --- a/StarStudio/src/StarStudio/Core/Base.h +++ b/StarEngine/src/StarEngine/Core/Base.h @@ -7,7 +7,7 @@ /* Windows x64/x86 */ #ifdef _WIN64 /* Windows x64 */ -#define SS_PLATFORM_WINDOWS +#define SE_PLATFORM_WINDOWS #else /* Windows x86 */ #error "x86 Builds are not supported!" @@ -21,10 +21,10 @@ #if TARGET_IPHONE_SIMULATOR == 1 #error "IOS simulator is not supported!" #elif TARGET_OS_IPHONE == 1 -#define SS_PLATFORM_IOS +#define SE_PLATFORM_IOS #error "IOS is not supported!" #elif TARGET_OS_MAC == 1 -#define SS_PLATFORM_MACOS +#define SE_PLATFORM_MACOS #error "MacOS is not supported!" #else #error "Unknown Apple platform!" @@ -33,10 +33,10 @@ * since android is based on the linux kernel * it has __linux__ defined */ #elif defined(__ANDROID__) -#define SS_PLATFORM_ANDROID +#define SE_PLATFORM_ANDROID #error "Android is not supported!" #elif defined(__linux__) -#define SS_PLATFORM_LINUX +#define SE_PLATFORM_LINUX #error "Linux is not supported!" #else /* Unknown compiler/platform */ @@ -44,33 +44,33 @@ #endif // End of platform detection -#ifdef SS_DEBUG -#if defined(SS_PLATFORM_WINDOWS) -#define SS_DEBUGBREAK() __debugbreak() -#elif defined(SS_PLATFORM_LINUX) +#ifdef SE_DEBUG +#if defined(SE_PLATFORM_WINDOWS) +#define SE_DEBUGBREAK() __debugbreak() +#elif defined(SE_PLATFORM_LINUX) #include -#define SS_DEBUGBREAK() raise(SIGTRAP) +#define SE_DEBUGBREAK() raise(SIGTRAP) #else #error "Platform doesn't support debugbreak yet!" #endif -#define SS_ENABLE_ASSERTS +#define SE_ENABLE_ASSERTS #else -#define SS_DEBUGBREAK() +#define SE_DEBUGBREAK() #endif -#ifdef SS_ENABLE_ASSERTS -#define SS_ASSERT(x, ...) { if(!(x)) { SS_ERROR("Assertion Failed: {0}", __VA_ARGS__); SS_DEBUGBREAK(); } } -#define SS_CORE_ASSERT(x, ...) { if(!(x)) { SS_CORE_ERROR("Assertion Failed: {0}", __VA_ARGS__); SS_DEBUGBREAK(); } } +#ifdef SE_ENABLE_ASSERTS +#define SE_ASSERT(x, ...) { if(!(x)) { SE_ERROR("Assertion Failed: {0}", __VA_ARGS__); SE_DEBUGBREAK(); } } +#define SE_CORE_ASSERT(x, ...) { if(!(x)) { SE_CORE_ERROR("Assertion Failed: {0}", __VA_ARGS__); SE_DEBUGBREAK(); } } #else -#define SS_ASSERT(x, ...) -#define SS_CORE_ASSERT(x, ...) +#define SE_ASSERT(x, ...) +#define SE_CORE_ASSERT(x, ...) #endif #define BIT(x) (1 << x) -#define SS_BIND_EVENT_FN(fn) std::bind(&fn, this, std::placeholders::_1) +#define SE_BIND_EVENT_FN(fn) std::bind(&fn, this, std::placeholders::_1) -namespace StarStudio { +namespace StarEngine { template using Scope = std::unique_ptr; diff --git a/StarEngine/src/StarEngine/Core/EntryPoint.h b/StarEngine/src/StarEngine/Core/EntryPoint.h new file mode 100644 index 00000000..664eaea6 --- /dev/null +++ b/StarEngine/src/StarEngine/Core/EntryPoint.h @@ -0,0 +1,23 @@ +#pragma once +#include "StarEngine/Core/Base.h" + +#ifdef SE_PLATFORM_WINDOWS + +extern StarEngine::Application* StarEngine::CreateApplication(); + + int main(int argc, char** argv) { + StarEngine::Log::Init(); + + SE_PROFILE_BEGIN_SESSION("Startup", "StarEngineProfile-Startup.json"); + auto app = StarEngine::CreateApplication(); + SE_PROFILE_END_SESSION(); + + SE_PROFILE_BEGIN_SESSION("Runtime", "StarEngineProfile-Runtime.json"); + app->Run(); + SE_PROFILE_END_SESSION(); + + SE_PROFILE_BEGIN_SESSION("Shutdown", "StarEngineProfile-Shutdown.json"); + delete app; + SE_PROFILE_END_SESSION(); + } +#endif \ No newline at end of file diff --git a/StarStudio/src/StarStudio/Core/Input.cpp b/StarEngine/src/StarEngine/Core/Input.cpp similarity index 54% rename from StarStudio/src/StarStudio/Core/Input.cpp rename to StarEngine/src/StarEngine/Core/Input.cpp index a881721d..002c7fe2 100644 --- a/StarStudio/src/StarStudio/Core/Input.cpp +++ b/StarEngine/src/StarEngine/Core/Input.cpp @@ -1,19 +1,19 @@ -#include "sspch.h" -#include "StarStudio/Core/Input.h" +#include "sepch.h" +#include "StarEngine/Core/Input.h" -#ifdef SS_PLATFORM_WINDOWS +#ifdef SE_PLATFORM_WINDOWS #include "Platform/Windows/WindowsInput.h" #endif -namespace StarStudio { +namespace StarEngine { Scope Input::s_Instance = Input::Create(); Scope Input::Create() { -#ifdef SS_PLATFORM_WINDOWS +#ifdef SE_PLATFORM_WINDOWS return CreateScope(); #else - SS_CORE_ASSERT(false, "Unknown platform!"); + SE_CORE_ASSERT(false, "Unknown platform!"); return nullptr; #endif } diff --git a/StarStudio/src/StarStudio/Core/Input.h b/StarEngine/src/StarEngine/Core/Input.h similarity index 87% rename from StarStudio/src/StarStudio/Core/Input.h rename to StarEngine/src/StarEngine/Core/Input.h index eb1f32b7..ad867e81 100644 --- a/StarStudio/src/StarStudio/Core/Input.h +++ b/StarEngine/src/StarEngine/Core/Input.h @@ -1,10 +1,10 @@ #pragma once -#include "StarStudio/Core/Base.h" -#include "StarStudio/Core/KeyCodes.h" -#include "StarStudio/Core/MouseCodes.h" +#include "StarEngine/Core/Base.h" +#include "StarEngine/Core/KeyCodes.h" +#include "StarEngine/Core/MouseCodes.h" -namespace StarStudio { +namespace StarEngine { class Input { diff --git a/StarEngine/src/StarEngine/Core/KeyCodes.h b/StarEngine/src/StarEngine/Core/KeyCodes.h new file mode 100644 index 00000000..371bf5d7 --- /dev/null +++ b/StarEngine/src/StarEngine/Core/KeyCodes.h @@ -0,0 +1,272 @@ +#pragma once + +namespace StarEngine +{ + typedef enum class KeyCode : uint16_t + { + // From glfw3.h + Space = 32, + Apostrophe = 39, /* ' */ + Comma = 44, /* , */ + Minus = 45, /* - */ + Period = 46, /* . */ + Slash = 47, /* / */ + + D0 = 48, /* 0 */ + D1 = 49, /* 1 */ + D2 = 50, /* 2 */ + D3 = 51, /* 3 */ + D4 = 52, /* 4 */ + D5 = 53, /* 5 */ + D6 = 54, /* 6 */ + D7 = 55, /* 7 */ + D8 = 56, /* 8 */ + D9 = 57, /* 9 */ + + Semicolon = 59, /* ; */ + Equal = 61, /* = */ + + A = 65, + B = 66, + C = 67, + D = 68, + E = 69, + F = 70, + G = 71, + H = 72, + I = 73, + J = 74, + K = 75, + L = 76, + M = 77, + N = 78, + O = 79, + P = 80, + Q = 81, + R = 82, + S = 83, + T = 84, + U = 85, + V = 86, + W = 87, + X = 88, + Y = 89, + Z = 90, + + LeftBracket = 91, /* [ */ + Backslash = 92, /* \ */ + RightBracket = 93, /* ] */ + GraveAccent = 96, /* ` */ + + World1 = 161, /* non-US #1 */ + World2 = 162, /* non-US #2 */ + + /* Function keys */ + Escape = 256, + Enter = 257, + Tab = 258, + Backspace = 259, + Insert = 260, + Delete = 261, + Right = 262, + Left = 263, + Down = 264, + Up = 265, + PageUp = 266, + PageDown = 267, + Home = 268, + End = 269, + CapsLock = 280, + ScrollLock = 281, + NumLock = 282, + PrintScreen = 283, + Pause = 284, + F1 = 290, + F2 = 291, + F3 = 292, + F4 = 293, + F5 = 294, + F6 = 295, + F7 = 296, + F8 = 297, + F9 = 298, + F10 = 299, + F11 = 300, + F12 = 301, + F13 = 302, + F14 = 303, + F15 = 304, + F16 = 305, + F17 = 306, + F18 = 307, + F19 = 308, + F20 = 309, + F21 = 310, + F22 = 311, + F23 = 312, + F24 = 313, + F25 = 314, + + /* Keypad */ + KP0 = 320, + KP1 = 321, + KP2 = 322, + KP3 = 323, + KP4 = 324, + KP5 = 325, + KP6 = 326, + KP7 = 327, + KP8 = 328, + KP9 = 329, + KPDecimal = 330, + KPDivide = 331, + KPMultiply = 332, + KPSubtract = 333, + KPAdd = 334, + KPEnter = 335, + KPEqual = 336, + + LeftShift = 340, + LeftControl = 341, + LeftAlt = 342, + LeftSuper = 343, + RightShift = 344, + RightControl = 345, + RightAlt = 346, + RightSuper = 347, + Menu = 348 + } Key; + + inline std::ostream& operator<<(std::ostream& os, KeyCode keyCode) + { + os << static_cast(keyCode); + return os; + } +} + +// From glfw3.h +#define SE_KEY_SPACE ::StarEngine::Key::Space +#define SE_KEY_APOSTROPHE ::StarEngine::Key::Apostrophe /* ' */ +#define SE_KEY_COMMA ::StarEngine::Key::Comma /* , */ +#define SE_KEY_MINUS ::StarEngine::Key::Minus /* - */ +#define SE_KEY_PERIOD ::StarEngine::Key::Period /* . */ +#define SE_KEY_SLASH ::StarEngine::Key::Slash /* / */ +#define SE_KEY_0 ::StarEngine::Key::D0 +#define SE_KEY_1 ::StarEngine::Key::D1 +#define SE_KEY_2 ::StarEngine::Key::D2 +#define SE_KEY_3 ::StarEngine::Key::D3 +#define SE_KEY_4 ::StarEngine::Key::D4 +#define SE_KEY_5 ::StarEngine::Key::D5 +#define SE_KEY_6 ::StarEngine::Key::D6 +#define SE_KEY_7 ::StarEngine::Key::D7 +#define SE_KEY_8 ::StarEngine::Key::D8 +#define SE_KEY_9 ::StarEngine::Key::D9 +#define SE_KEY_SEMICOLON ::StarEngine::Key::Semicolon /* ; */ +#define SE_KEY_EQUAL ::StarEngine::Key::Equal /* = */ +#define SE_KEY_A ::StarEngine::Key::A +#define SE_KEY_B ::StarEngine::Key::B +#define SE_KEY_C ::StarEngine::Key::C +#define SE_KEY_D ::StarEngine::Key::D +#define SE_KEY_E ::StarEngine::Key::E +#define SE_KEY_F ::StarEngine::Key::F +#define SE_KEY_G ::StarEngine::Key::G +#define SE_KEY_H ::StarEngine::Key::H +#define SE_KEY_I ::StarEngine::Key::I +#define SE_KEY_J ::StarEngine::Key::J +#define SE_KEY_K ::StarEngine::Key::K +#define SE_KEY_L ::StarEngine::Key::L +#define SE_KEY_M ::StarEngine::Key::M +#define SE_KEY_N ::StarEngine::Key::N +#define SE_KEY_O ::StarEngine::Key::O +#define SE_KEY_P ::StarEngine::Key::P +#define SE_KEY_Q ::StarEngine::Key::Q +#define SE_KEY_R ::StarEngine::Key::R +#define SE_KEY_S ::StarEngine::Key::S +#define SE_KEY_T ::StarEngine::Key::T +#define SE_KEY_U ::StarEngine::Key::U +#define SE_KEY_V ::StarEngine::Key::V +#define SE_KEY_W ::StarEngine::Key::W +#define SE_KEY_X ::StarEngine::Key::X +#define SE_KEY_Y ::StarEngine::Key::Y +#define SE_KEY_Z ::StarEngine::Key::Z +#define SE_KEY_LEFT_BRACKET ::StarEngine::Key::LeftBracket /* [ */ +#define SE_KEY_BACKSLASH ::StarEngine::Key::Backslash /* \ */ +#define SE_KEY_RIGHT_BRACKET ::StarEngine::Key::RightBracket /* ] */ +#define SE_KEY_GRAVE_ACCENT ::StarEngine::Key::GraveAccent /* ` */ +#define SE_KEY_WORLD_1 ::StarEngine::Key::World1 /* non-US #1 */ +#define SE_KEY_WORLD_2 ::StarEngine::Key::World2 /* non-US #2 */ + +/* Function keys */ +#define SE_KEY_ESCAPE ::StarEngine::Key::Escape +#define SE_KEY_ENTER ::StarEngine::Key::Enter +#define SE_KEY_TAB ::StarEngine::Key::Tab +#define SE_KEY_BACKSPACE ::StarEngine::Key::Backspace +#define SE_KEY_INSERT ::StarEngine::Key::Insert +#define SE_KEY_DELETE ::StarEngine::Key::Delete +#define SE_KEY_RIGHT ::StarEngine::Key::Right +#define SE_KEY_LEFT ::StarEngine::Key::Left +#define SE_KEY_DOWN ::StarEngine::Key::Down +#define SE_KEY_UP ::StarEngine::Key::Up +#define SE_KEY_PAGE_UP ::StarEngine::Key::PageUp +#define SE_KEY_PAGE_DOWN ::StarEngine::Key::PageDown +#define SE_KEY_HOME ::StarEngine::Key::Home +#define SE_KEY_END ::StarEngine::Key::End +#define SE_KEY_CAPS_LOCK ::StarEngine::Key::CapsLock +#define SE_KEY_SCROLL_LOCK ::StarEngine::Key::ScrollLock +#define SE_KEY_NUM_LOCK ::StarEngine::Key::NumLock +#define SE_KEY_PRINT_SCREEN ::StarEngine::Key::PrintScreen +#define SE_KEY_PAUSE ::StarEngine::Key::Pause +#define SE_KEY_F1 ::StarEngine::Key::F1 +#define SE_KEY_F2 ::StarEngine::Key::F2 +#define SE_KEY_F3 ::StarEngine::Key::F3 +#define SE_KEY_F4 ::StarEngine::Key::F4 +#define SE_KEY_F5 ::StarEngine::Key::F5 +#define SE_KEY_F6 ::StarEngine::Key::F6 +#define SE_KEY_F7 ::StarEngine::Key::F7 +#define SE_KEY_F8 ::StarEngine::Key::F8 +#define SE_KEY_F9 ::StarEngine::Key::F9 +#define SE_KEY_F10 ::StarEngine::Key::F10 +#define SE_KEY_F11 ::StarEngine::Key::F11 +#define SE_KEY_F12 ::StarEngine::Key::F12 +#define SE_KEY_F13 ::StarEngine::Key::F13 +#define SE_KEY_F14 ::StarEngine::Key::F14 +#define SE_KEY_F15 ::StarEngine::Key::F15 +#define SE_KEY_F16 ::StarEngine::Key::F16 +#define SE_KEY_F17 ::StarEngine::Key::F17 +#define SE_KEY_F18 ::StarEngine::Key::F18 +#define SE_KEY_F19 ::StarEngine::Key::F19 +#define SE_KEY_F20 ::StarEngine::Key::F20 +#define SE_KEY_F21 ::StarEngine::Key::F21 +#define SE_KEY_F22 ::StarEngine::Key::F22 +#define SE_KEY_F23 ::StarEngine::Key::F23 +#define SE_KEY_F24 ::StarEngine::Key::F24 +#define SE_KEY_F25 ::StarEngine::Key::F25 + +/* Keypad */ +#define SE_KEY_KP_0 ::StarEngine::Key::KP0 +#define SE_KEY_KP_1 ::StarEngine::Key::KP1 +#define SE_KEY_KP_2 ::StarEngine::Key::KP2 +#define SE_KEY_KP_3 ::StarEngine::Key::KP3 +#define SE_KEY_KP_4 ::StarEngine::Key::KP4 +#define SE_KEY_KP_5 ::StarEngine::Key::KP5 +#define SE_KEY_KP_6 ::StarEngine::Key::KP6 +#define SE_KEY_KP_7 ::StarEngine::Key::KP7 +#define SE_KEY_KP_8 ::StarEngine::Key::KP8 +#define SE_KEY_KP_9 ::StarEngine::Key::KP9 +#define SE_KEY_KP_DECIMAL ::StarEngine::Key::KPDecimal +#define SE_KEY_KP_DIVIDE ::StarEngine::Key::KPDivide +#define SE_KEY_KP_MULTIPLY ::StarEngine::Key::KPMultiply +#define SE_KEY_KP_SUBTRACT ::StarEngine::Key::KPSubtract +#define SE_KEY_KP_ADD ::StarEngine::Key::KPAdd +#define SE_KEY_KP_ENTER ::StarEngine::Key::KPEnter +#define SE_KEY_KP_EQUAL ::StarEngine::Key::KPEqual + +#define SE_KEY_LEFT_SHIFT ::StarEngine::Key::LeftShift +#define SE_KEY_LEFT_CONTROL ::StarEngine::Key::LeftControl +#define SE_KEY_LEFT_ALT ::StarEngine::Key::LeftAlt +#define SE_KEY_LEFT_SUPER ::StarEngine::Key::LeftSuper +#define SE_KEY_RIGHT_SHIFT ::StarEngine::Key::RightShift +#define SE_KEY_RIGHT_CONTROL ::StarEngine::Key::RightControl +#define SE_KEY_RIGHT_ALT ::StarEngine::Key::RightAlt +#define SE_KEY_RIGHT_SUPER ::StarEngine::Key::RightSuper +#define SE_KEY_MENU ::StarEngine::Key::Menu \ No newline at end of file diff --git a/StarStudio/src/StarStudio/Core/Layer.cpp b/StarEngine/src/StarEngine/Core/Layer.cpp similarity index 51% rename from StarStudio/src/StarStudio/Core/Layer.cpp rename to StarEngine/src/StarEngine/Core/Layer.cpp index ab21d8e1..728df3fa 100644 --- a/StarStudio/src/StarStudio/Core/Layer.cpp +++ b/StarEngine/src/StarEngine/Core/Layer.cpp @@ -1,7 +1,7 @@ -#include "sspch.h" -#include "StarStudio/Core/Layer.h" +#include "sepch.h" +#include "StarEngine/Core/Layer.h" -namespace StarStudio { +namespace StarEngine { Layer::Layer(const std::string& debugName) : m_DebugName(debugName) diff --git a/StarStudio/src/StarStudio/Core/Layer.h b/StarEngine/src/StarEngine/Core/Layer.h similarity index 75% rename from StarStudio/src/StarStudio/Core/Layer.h rename to StarEngine/src/StarEngine/Core/Layer.h index ed042c34..540a32c9 100644 --- a/StarStudio/src/StarStudio/Core/Layer.h +++ b/StarEngine/src/StarEngine/Core/Layer.h @@ -1,10 +1,10 @@ #pragma once -#include "StarStudio/Core/Base.h" -#include "StarStudio/Core/Timestep.h" -#include "StarStudio/Events/Event.h" +#include "StarEngine/Core/Base.h" +#include "StarEngine/Core/Timestep.h" +#include "StarEngine/Events/Event.h" -namespace StarStudio +namespace StarEngine { class Layer { diff --git a/StarStudio/src/StarStudio/Core/LayerStack.cpp b/StarEngine/src/StarEngine/Core/LayerStack.cpp similarity index 90% rename from StarStudio/src/StarStudio/Core/LayerStack.cpp rename to StarEngine/src/StarEngine/Core/LayerStack.cpp index 665e84f4..43ef8fba 100644 --- a/StarStudio/src/StarStudio/Core/LayerStack.cpp +++ b/StarEngine/src/StarEngine/Core/LayerStack.cpp @@ -1,7 +1,7 @@ -#include "sspch.h" -#include "StarStudio/Core/LayerStack.h" +#include "sepch.h" +#include "StarEngine/Core/LayerStack.h" -namespace StarStudio { +namespace StarEngine { LayerStack::~LayerStack() { diff --git a/StarStudio/src/StarStudio/Core/LayerStack.h b/StarEngine/src/StarEngine/Core/LayerStack.h similarity index 91% rename from StarStudio/src/StarStudio/Core/LayerStack.h rename to StarEngine/src/StarEngine/Core/LayerStack.h index 8d739b43..1248dce6 100644 --- a/StarStudio/src/StarStudio/Core/LayerStack.h +++ b/StarEngine/src/StarEngine/Core/LayerStack.h @@ -1,10 +1,11 @@ #pragma once -#include "StarStudio/Core/Base.h" -#include "StarStudio/Core/Layer.h" +#include "StarEngine/Core/Base.h" +#include "StarEngine/Core/Layer.h" #include -namespace StarStudio { + +namespace StarEngine { class LayerStack { public: diff --git a/StarStudio/src/StarStudio/Core/Log.cpp b/StarEngine/src/StarEngine/Core/Log.cpp similarity index 83% rename from StarStudio/src/StarStudio/Core/Log.cpp rename to StarEngine/src/StarEngine/Core/Log.cpp index 5cd9355c..75cedc18 100644 --- a/StarStudio/src/StarStudio/Core/Log.cpp +++ b/StarEngine/src/StarEngine/Core/Log.cpp @@ -1,12 +1,12 @@ -#include "sspch.h" +#include "sepch.h" -#include "StarStudio/Core/Log.h" +#include "StarEngine/Core/Log.h" #include #include -namespace StarStudio +namespace StarEngine { Ref Log::s_CoreLogger; Ref Log::s_ClientLogger; @@ -15,12 +15,12 @@ namespace StarStudio { std::vector logSinks; logSinks.emplace_back(std::make_shared()); - logSinks.emplace_back(std::make_shared("StarStudio.log", true)); + logSinks.emplace_back(std::make_shared("StarEngine.log", true)); logSinks[0]->set_pattern("%^[%T] %n: %v%$"); logSinks[1]->set_pattern("[%T] [%l] %n: %v"); - s_CoreLogger = std::make_shared("STARSTUDIO", begin(logSinks), end(logSinks)); + s_CoreLogger = std::make_shared("STARENGINE", begin(logSinks), end(logSinks)); spdlog::register_logger(s_CoreLogger); s_CoreLogger->set_level(spdlog::level::trace); s_CoreLogger->flush_on(spdlog::level::trace); diff --git a/StarEngine/src/StarEngine/Core/Log.h b/StarEngine/src/StarEngine/Core/Log.h new file mode 100644 index 00000000..38ea060c --- /dev/null +++ b/StarEngine/src/StarEngine/Core/Log.h @@ -0,0 +1,32 @@ +#pragma once + +#include "StarEngine/Core/Base.h" + +#include "spdlog/spdlog.h" +#include "spdlog/fmt/ostr.h" + +namespace StarEngine { + class Log + { + public: + static void Init(); + + static Ref& GetCoreLogger() { return s_CoreLogger; } + static Ref& GetClientLogger() { return s_ClientLogger; } + private: + static Ref s_CoreLogger; + static Ref s_ClientLogger; + }; +} + +#define SE_CORE_TRACE(...) ::StarEngine::Log::GetCoreLogger()->trace(__VA_ARGS__) +#define SE_CORE_INFO(...) ::StarEngine::Log::GetCoreLogger()->info(__VA_ARGS__) +#define SE_CORE_WARN(...) ::StarEngine::Log::GetCoreLogger()->warn(__VA_ARGS__) +#define SE_CORE_ERROR(...) ::StarEngine::Log::GetCoreLogger()->error(__VA_ARGS__) +#define SE_CORE_CRITICAL(...) ::StarEngine::Log::GetClientLogger()->critical(__VA_ARGS__) + +#define SE_TRACE(...) ::StarEngine::Log::GetClientLogger()->trace(__VA_ARGS__) +#define SE_INFO(...) ::StarEngine::Log::GetClientLogger()->info(__VA_ARGS__) +#define SE_WARN(...) ::StarEngine::Log::GetClientLogger()->warn(__VA_ARGS__) +#define SE_ERROR(...) ::StarEngine::Log::GetClientLogger()->error(__VA_ARGS__) +#define SE_CRITICAL(...) ::StarEngine::Log::GetClientLogger()->critical(__VA_ARGS__) \ No newline at end of file diff --git a/StarEngine/src/StarEngine/Core/MouseCodes.h b/StarEngine/src/StarEngine/Core/MouseCodes.h new file mode 100644 index 00000000..0fe15465 --- /dev/null +++ b/StarEngine/src/StarEngine/Core/MouseCodes.h @@ -0,0 +1,41 @@ +#pragma once + +namespace StarEngine +{ + typedef enum class MouseCode : uint16_t + { + // From glfw3.h + Button0 = 0, + Button1 = 1, + Button2 = 2, + Button3 = 3, + Button4 = 4, + Button5 = 5, + Button6 = 6, + Button7 = 7, + + ButtonLast = Button7, + ButtonLeft = Button0, + ButtonRight = Button1, + ButtonMiddle = Button2 + } Mouse; + + inline std::ostream& operator<<(std::ostream& os, MouseCode mouseCode) + { + os << static_cast(mouseCode); + return os; + } +} + +#define SE_MOUSE_BUTTON_0 ::StarEngine::Mouse::Button0 +#define SE_MOUSE_BUTTON_1 ::StarEngine::Mouse::Button1 +#define SE_MOUSE_BUTTON_2 ::StarEngine::Mouse::Button2 +#define SE_MOUSE_BUTTON_3 ::StarEngine::Mouse::Button3 +#define SE_MOUSE_BUTTON_4 ::StarEngine::Mouse::Button4 +#define SE_MOUSE_BUTTON_5 ::StarEngine::Mouse::Button5 +#define SE_MOUSE_BUTTON_6 ::StarEngine::Mouse::Button6 +#define SE_MOUSE_BUTTON_7 ::StarEngine::Mouse::Button7 +#define SE_MOUSE_BUTTON_LAST ::StarEngine::Mouse::ButtonLast +#define SE_MOUSE_BUTTON_LEFT ::StarEngine::Mouse::ButtonLeft +#define SE_MOUSE_BUTTON_RIGHT ::StarEngine::Mouse::ButtonRight +#define SE_MOUSE_BUTTON_MIDDLE ::StarEngine::Mouse::ButtonMiddle \ No newline at end of file diff --git a/StarStudio/src/StarStudio/Core/Timestep.h b/StarEngine/src/StarEngine/Core/Timestep.h similarity index 92% rename from StarStudio/src/StarStudio/Core/Timestep.h rename to StarEngine/src/StarEngine/Core/Timestep.h index 4fe3e4b0..e8403172 100644 --- a/StarStudio/src/StarStudio/Core/Timestep.h +++ b/StarEngine/src/StarEngine/Core/Timestep.h @@ -1,6 +1,6 @@ #pragma once -namespace StarStudio { +namespace StarEngine { class Timestep { diff --git a/StarStudio/src/StarStudio/Core/Window.cpp b/StarEngine/src/StarEngine/Core/Window.cpp similarity index 52% rename from StarStudio/src/StarStudio/Core/Window.cpp rename to StarEngine/src/StarEngine/Core/Window.cpp index b46ef9e7..9bbda7ea 100644 --- a/StarStudio/src/StarStudio/Core/Window.cpp +++ b/StarEngine/src/StarEngine/Core/Window.cpp @@ -1,18 +1,18 @@ -#include "sspch.h" -#include "StarStudio/Core/Window.h" +#include "sepch.h" +#include "StarEngine/Core/Window.h" -#ifdef SS_PLATFORM_WINDOWS +#ifdef SE_PLATFORM_WINDOWS #include "Platform/Windows/WindowsWindow.h" #endif -namespace StarStudio +namespace StarEngine { Scope Window::Create(const WindowProps& props) { -#ifdef SS_PLATFORM_WINDOWS +#ifdef SE_PLATFORM_WINDOWS return CreateScope(props); #else - SS_CORE_ASSERT(false, "Unknown platform!"); + SE_CORE_ASSERT(false, "Unknown platform!"); return nullptr; #endif } diff --git a/StarStudio/src/StarStudio/Core/Window.h b/StarEngine/src/StarEngine/Core/Window.h similarity index 82% rename from StarStudio/src/StarStudio/Core/Window.h rename to StarEngine/src/StarEngine/Core/Window.h index 308fba4d..fc0ee4a7 100644 --- a/StarStudio/src/StarStudio/Core/Window.h +++ b/StarEngine/src/StarEngine/Core/Window.h @@ -1,11 +1,11 @@ #pragma once -#include "sspch.h" +#include "sepch.h" -#include "StarStudio/Core/Base.h" -#include "StarStudio/Events/Event.h" +#include "StarEngine/Core/Base.h" +#include "StarEngine/Events/Event.h" -namespace StarStudio { +namespace StarEngine { struct WindowProps { @@ -13,7 +13,7 @@ namespace StarStudio { unsigned int Width; unsigned int Height; - WindowProps(const std::string& title = "StarStudio Engine", + WindowProps(const std::string& title = "StarEngine Engine", unsigned int width = 1280, unsigned int height = 720) : Title(title), Width(width), Height(height) diff --git a/StarStudio/src/StarStudio/Debug/Instrumentor.h b/StarEngine/src/StarEngine/Debug/Instrumentor.h similarity index 84% rename from StarStudio/src/StarStudio/Debug/Instrumentor.h rename to StarEngine/src/StarEngine/Debug/Instrumentor.h index 986c663e..cc53325d 100644 --- a/StarStudio/src/StarStudio/Debug/Instrumentor.h +++ b/StarEngine/src/StarEngine/Debug/Instrumentor.h @@ -7,7 +7,7 @@ #include #include -namespace StarStudio { +namespace StarEngine { using FloatingPointMicroseconds = std::chrono::duration; @@ -48,7 +48,7 @@ namespace StarStudio { // profiling output. if (Log::GetCoreLogger()) // Edge case: BeginSession() might be before Log::Init() { - SS_CORE_ERROR("Instrumentor::BeginSession('{0}') when session '{1}' already open.", name, m_CurrentSession->Name); + SE_CORE_ERROR("Instrumentor::BeginSession('{0}') when session '{1}' already open.", name, m_CurrentSession->Name); } InternalEndSession(); } @@ -63,7 +63,7 @@ namespace StarStudio { { if (Log::GetCoreLogger()) // Edge case: BeginSession() might be before Log::Init() { - SS_CORE_ERROR("Instrumentor could not open results file '{0}'.", filepath); + SE_CORE_ERROR("Instrumentor could not open results file '{0}'.", filepath); } } } @@ -191,37 +191,37 @@ namespace StarStudio { } } -#define SS_PROFILE 0 -#if SS_PROFILE +#define SE_PROFILE 0 +#if SE_PROFILE // Resolve which function signature macro will be used. Note that this only // is resolved when the (pre)compiler starts, so the syntax highlighting // could mark the wrong one in your editor! #if defined(__GNUC__) || (defined(__MWERKS__) && (__MWERKS__ >= 0x3000)) || (defined(__ICC) && (__ICC >= 600)) || defined(__ghs__) -#define SS_FUNC_SIG __PRETTY_FUNCTION__ +#define SE_FUNC_SIG __PRETTY_FUNCTION__ #elif defined(__DMC__) && (__DMC__ >= 0x810) -#define SS_FUNC_SIG __PRETTY_FUNCTION__ +#define SE_FUNC_SIG __PRETTY_FUNCTION__ #elif defined(__FUNCSIG__) #elif (defined(__FUNCSIG__) || (_MSC_VER)) #elif (defined(__INTEL_COMPILER) && (__INTEL_COMPILER >= 600)) || (defined(__IBMCPP__) && (__IBMCPP__ >= 500)) -#define SS_FUNC_SIG __FUNCTION__ +#define SE_FUNC_SIG __FUNCTION__ #elif defined(__BORLANDC__) && (__BORLANDC__ >= 0x550) -#define SS_FUNC_SIG __FUNC__ +#define SE_FUNC_SIG __FUNC__ #elif defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901) -#define SS_FUNC_SIG __func__ +#define SE_FUNC_SIG __func__ #elif defined(__cplusplus) && (__cplusplus >= 201103) -#define SS_FUNC_SIG __func__ +#define SE_FUNC_SIG __func__ #else -#define SS_FUNC_SIG "SS_FUNC_SIG unknown!" +#define SE_FUNC_SIG "SE_FUNC_SIG unknown!" #endif -#define SS_PROFILE_BEGIN_SESSION(name, filepath) ::StarStudio::Instrumentor::Get().BeginSession(name, filepath) -#define SS_PROFILE_END_SESSION() ::StarStudio::Instrumentor::Get().EndSession() -#define HZ_PROFILE_SCOPE(name) constexpr auto fixedName = ::StarStudio::InstrumentorUtils::CleanupOutputString(name, "__cdecl ");\ - ::StarStudio::InstrumentationTimer timer##__LINE__(fixedName.Data) -#define SS_PROFILE_FUNCTION() SS_PROFILE_SCOPE(SS_FUNC_SIG) +#define SE_PROFILE_BEGIN_SESSION(name, filepath) ::StarEngine::Instrumentor::Get().BeginSession(name, filepath) +#define SE_PROFILE_END_SESSION() ::StarEngine::Instrumentor::Get().EndSession() +#define SE_PROFILE_SCOPE(name) constexpr auto fixedName = ::StarEngine::InstrumentorUtils::CleanupOutputString(name, "__cdecl ");\ + ::StarEngine::InstrumentationTimer timer##__LINE__(fixedName.Data) +#define SE_PROFILE_FUNCTION() SE_PROFILE_SCOPE(SS_FUNC_SIG) #else -#define SS_PROFILE_BEGIN_SESSION(name, filepath) -#define SS_PROFILE_END_SESSION() -#define SS_PROFILE_SCOPE(name) -#define SS_PROFILE_FUNCTION() +#define SE_PROFILE_BEGIN_SESSION(name, filepath) +#define SE_PROFILE_END_SESSION() +#define SE_PROFILE_SCOPE(name) +#define SE_PROFILE_FUNCTION() #endif \ No newline at end of file diff --git a/StarStudio/src/StarStudio/Events/ApplicationEvent.h b/StarEngine/src/StarEngine/Events/ApplicationEvent.h similarity index 95% rename from StarStudio/src/StarStudio/Events/ApplicationEvent.h rename to StarEngine/src/StarEngine/Events/ApplicationEvent.h index 12ac0617..b19819df 100644 --- a/StarStudio/src/StarStudio/Events/ApplicationEvent.h +++ b/StarEngine/src/StarEngine/Events/ApplicationEvent.h @@ -1,8 +1,8 @@ #pragma once -#include "StarStudio/Events/Event.h" +#include "StarEngine/Events/Event.h" -namespace StarStudio { +namespace StarEngine { class WindowResizeEvent : public Event { public: diff --git a/StarStudio/src/StarStudio/Events/Event.h b/StarEngine/src/StarEngine/Events/Event.h similarity index 96% rename from StarStudio/src/StarStudio/Events/Event.h rename to StarEngine/src/StarEngine/Events/Event.h index 62da9735..7c8ab509 100644 --- a/StarStudio/src/StarStudio/Events/Event.h +++ b/StarEngine/src/StarEngine/Events/Event.h @@ -1,9 +1,9 @@ #pragma once -#include "sspch.h" -#include "StarStudio/Core/Base.h" +#include "sepch.h" +#include "StarEngine/Core/Base.h" -namespace StarStudio { +namespace StarEngine { // Events in Hazel are currently blocking, meaning when an event occurs it // immediately gets dispatched and must be dealt with right then an there. diff --git a/StarStudio/src/StarStudio/Events/KeyEvent.h b/StarEngine/src/StarEngine/Events/KeyEvent.h similarity index 93% rename from StarStudio/src/StarStudio/Events/KeyEvent.h rename to StarEngine/src/StarEngine/Events/KeyEvent.h index 2d51cd2f..f791a7ae 100644 --- a/StarStudio/src/StarStudio/Events/KeyEvent.h +++ b/StarEngine/src/StarEngine/Events/KeyEvent.h @@ -1,9 +1,9 @@ #pragma once -#include "StarStudio/Events/Event.h" -#include "StarStudio/Core/Input.h" +#include "StarEngine/Events/Event.h" +#include "StarEngine/Core/Input.h" -namespace StarStudio { +namespace StarEngine { class KeyEvent : public Event { diff --git a/StarStudio/src/StarStudio/Events/MouseEvent.h b/StarEngine/src/StarEngine/Events/MouseEvent.h similarity index 95% rename from StarStudio/src/StarStudio/Events/MouseEvent.h rename to StarEngine/src/StarEngine/Events/MouseEvent.h index a3aa54a9..760f7eb4 100644 --- a/StarStudio/src/StarStudio/Events/MouseEvent.h +++ b/StarEngine/src/StarEngine/Events/MouseEvent.h @@ -1,9 +1,9 @@ #pragma once -#include "StarStudio/Events/Event.h" -#include "StarStudio/Core/Input.h" +#include "StarEngine/Events/Event.h" +#include "StarEngine/Core/Input.h" -namespace StarStudio { +namespace StarEngine { class MouseMovedEvent : public Event { diff --git a/StarStudio/src/StarStudio/ImGui/ImGuiBuild.cpp b/StarEngine/src/StarEngine/ImGui/ImGuiBuild.cpp similarity index 86% rename from StarStudio/src/StarStudio/ImGui/ImGuiBuild.cpp rename to StarEngine/src/StarEngine/ImGui/ImGuiBuild.cpp index 014d3c27..cdea2890 100644 --- a/StarStudio/src/StarStudio/ImGui/ImGuiBuild.cpp +++ b/StarEngine/src/StarEngine/ImGui/ImGuiBuild.cpp @@ -1,4 +1,4 @@ -#include "sspch.h" +#include "sepch.h" #define IMGUI_IMPL_OPENGL_LOADER_GLAD #include diff --git a/StarStudio/src/StarStudio/ImGui/ImGuiLayer.cpp b/StarEngine/src/StarEngine/ImGui/ImGuiLayer.cpp similarity index 91% rename from StarStudio/src/StarStudio/ImGui/ImGuiLayer.cpp rename to StarEngine/src/StarEngine/ImGui/ImGuiLayer.cpp index 0b63286a..72a4429a 100644 --- a/StarStudio/src/StarStudio/ImGui/ImGuiLayer.cpp +++ b/StarEngine/src/StarEngine/ImGui/ImGuiLayer.cpp @@ -1,17 +1,17 @@ -#include "sspch.h" -#include "StarStudio/ImGui/ImGuiLayer.h" +#include "sepch.h" +#include "StarEngine/ImGui/ImGuiLayer.h" #include #include #include -#include "StarStudio/Core/Application.h" +#include "StarEngine/Core/Application.h" // TEMPORARY #include #include -namespace StarStudio { +namespace StarEngine { ImGuiLayer::ImGuiLayer() : Layer("ImGuiLayer") @@ -21,7 +21,7 @@ namespace StarStudio { void ImGuiLayer::OnAttach() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); // Setup Dear ImGui context IMGUI_CHECKVERSION(); @@ -56,7 +56,7 @@ namespace StarStudio { void ImGuiLayer::OnDetach() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); ImGui_ImplOpenGL3_Shutdown(); ImGui_ImplGlfw_Shutdown(); @@ -72,7 +72,7 @@ namespace StarStudio { void ImGuiLayer::Begin() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); ImGui_ImplOpenGL3_NewFrame(); ImGui_ImplGlfw_NewFrame(); @@ -81,7 +81,7 @@ namespace StarStudio { void ImGuiLayer::End() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); ImGuiIO& io = ImGui::GetIO(); Application& app = Application::Get(); diff --git a/StarStudio/src/StarStudio/ImGui/ImGuiLayer.h b/StarEngine/src/StarEngine/ImGui/ImGuiLayer.h similarity index 60% rename from StarStudio/src/StarStudio/ImGui/ImGuiLayer.h rename to StarEngine/src/StarEngine/ImGui/ImGuiLayer.h index b2c9f279..fe288414 100644 --- a/StarStudio/src/StarStudio/ImGui/ImGuiLayer.h +++ b/StarEngine/src/StarEngine/ImGui/ImGuiLayer.h @@ -1,12 +1,12 @@ #pragma once -#include "StarStudio/Core/Layer.h" +#include "StarEngine/Core/Layer.h" -#include "StarStudio/Events/ApplicationEvent.h" -#include "StarStudio/Events/KeyEvent.h" -#include "StarStudio/Events/MouseEvent.h" +#include "StarEngine/Events/ApplicationEvent.h" +#include "StarEngine/Events/KeyEvent.h" +#include "StarEngine/Events/MouseEvent.h" -namespace StarStudio { +namespace StarEngine { class ImGuiLayer : public Layer { diff --git a/StarStudio/src/StarStudio/Renderer/Buffer.cpp b/StarEngine/src/StarEngine/Renderer/Buffer.cpp similarity index 64% rename from StarStudio/src/StarStudio/Renderer/Buffer.cpp rename to StarEngine/src/StarEngine/Renderer/Buffer.cpp index f17f24de..35fe3b7e 100644 --- a/StarStudio/src/StarStudio/Renderer/Buffer.cpp +++ b/StarEngine/src/StarEngine/Renderer/Buffer.cpp @@ -1,21 +1,21 @@ -#include "sspch.h" -#include "StarStudio/Renderer/Buffer.h" +#include "sepch.h" +#include "StarEngine/Renderer/Buffer.h" -#include "StarStudio/Renderer/Renderer.h" +#include "StarEngine/Renderer/Renderer.h" #include "Platform/OpenGL/OpenGLBuffer.h" -namespace StarStudio { +namespace StarEngine { Ref VertexBuffer::Create(uint32_t size) { switch (Renderer::GetAPI()) { - case RendererAPI::API::None: SS_CORE_ASSERT(false, "Renderer API::None is currently not supported"); return nullptr; + case RendererAPI::API::None: SE_CORE_ASSERT(false, "Renderer API::None is currently not supported"); return nullptr; case RendererAPI::API::OpenGL: return CreateRef(size); } - SS_CORE_ASSERT(false, "Unknown RendererAPI!"); + SE_CORE_ASSERT(false, "Unknown RendererAPI!"); return nullptr; } @@ -23,11 +23,11 @@ namespace StarStudio { switch (Renderer::GetAPI()) { - case RendererAPI::API::None: SS_CORE_ASSERT(false, "RendererAPI::None is currently not supported") return nullptr; + case RendererAPI::API::None: SE_CORE_ASSERT(false, "RendererAPI::None is currently not supported") return nullptr; case RendererAPI::API::OpenGL: return CreateRef(vertices, size); } - SS_CORE_ASSERT(false, "Unknown RendererAPI!"); + SE_CORE_ASSERT(false, "Unknown RendererAPI!"); return nullptr; } @@ -35,11 +35,11 @@ namespace StarStudio { switch (Renderer::GetAPI()) { - case RendererAPI::API::None: SS_CORE_ASSERT(false, "RendererAPI::None is currently not supported") return nullptr; + case RendererAPI::API::None: SE_CORE_ASSERT(false, "RendererAPI::None is currently not supported") return nullptr; case RendererAPI::API::OpenGL: return CreateRef(indices, size); } - SS_CORE_ASSERT(false, "Unknown RendererAPI!"); + SE_CORE_ASSERT(false, "Unknown RendererAPI!"); return nullptr; } }; \ No newline at end of file diff --git a/StarStudio/src/StarStudio/Renderer/Buffer.h b/StarEngine/src/StarEngine/Renderer/Buffer.h similarity index 96% rename from StarStudio/src/StarStudio/Renderer/Buffer.h rename to StarEngine/src/StarEngine/Renderer/Buffer.h index e6604578..24ce9419 100644 --- a/StarStudio/src/StarStudio/Renderer/Buffer.h +++ b/StarEngine/src/StarEngine/Renderer/Buffer.h @@ -1,7 +1,6 @@ #pragma once - -namespace StarStudio { +namespace StarEngine { enum class ShaderDataType { @@ -26,7 +25,7 @@ namespace StarStudio { } - SS_CORE_ASSERT(false, "Unknown ShaderDataType!"); + SE_CORE_ASSERT(false, "Unknown ShaderDataType!"); return 0; } @@ -60,7 +59,7 @@ namespace StarStudio { case ShaderDataType::Bool: return 1; } - SS_CORE_ASSERT(false, "Unknown ShaderDataType!"); + SE_CORE_ASSERT(false, "Unknown ShaderDataType!"); return 0; } diff --git a/StarStudio/src/StarStudio/Renderer/GraphicsContext.cpp b/StarEngine/src/StarEngine/Renderer/GraphicsContext.cpp similarity index 57% rename from StarStudio/src/StarStudio/Renderer/GraphicsContext.cpp rename to StarEngine/src/StarEngine/Renderer/GraphicsContext.cpp index bbfd08e2..5b49b015 100644 --- a/StarStudio/src/StarStudio/Renderer/GraphicsContext.cpp +++ b/StarEngine/src/StarEngine/Renderer/GraphicsContext.cpp @@ -1,19 +1,19 @@ -#include "sspch.h" -#include "StarStudio/Renderer/GraphicsContext.h" +#include "sepch.h" +#include "StarEngine/Renderer/GraphicsContext.h" -#include "StarStudio/Renderer/Renderer.h" +#include "StarEngine/Renderer/Renderer.h" #include "Platform/OpenGL/OpenGLContext.h" -namespace StarStudio +namespace StarEngine { Scope GraphicsContext::Create(void* window) { switch (Renderer::GetAPI()) { - case RendererAPI::API::None: SS_CORE_ASSERT(false, "RendererAPI::None is currently not supported!"); return nullptr; + case RendererAPI::API::None: SE_CORE_ASSERT(false, "RendererAPI::None is currently not supported!"); return nullptr; case RendererAPI::API::OpenGL: return CreateScope(static_cast(window)); } - SS_CORE_ASSERT(false, "Unknown RendererAPI!"); + SE_CORE_ASSERT(false, "Unknown RendererAPI!"); return nullptr; } } \ No newline at end of file diff --git a/StarStudio/src/StarStudio/Renderer/GraphicsContext.h b/StarEngine/src/StarEngine/Renderer/GraphicsContext.h similarity index 88% rename from StarStudio/src/StarStudio/Renderer/GraphicsContext.h rename to StarEngine/src/StarEngine/Renderer/GraphicsContext.h index b176ba21..e6ead260 100644 --- a/StarStudio/src/StarStudio/Renderer/GraphicsContext.h +++ b/StarEngine/src/StarEngine/Renderer/GraphicsContext.h @@ -1,5 +1,5 @@ #pragma once -namespace StarStudio { +namespace StarEngine { class GraphicsContext { diff --git a/StarStudio/src/StarStudio/Renderer/OrthographicCamera.cpp b/StarEngine/src/StarEngine/Renderer/OrthographicCamera.cpp similarity index 83% rename from StarStudio/src/StarStudio/Renderer/OrthographicCamera.cpp rename to StarEngine/src/StarEngine/Renderer/OrthographicCamera.cpp index c16e6af1..580cdd97 100644 --- a/StarStudio/src/StarStudio/Renderer/OrthographicCamera.cpp +++ b/StarEngine/src/StarEngine/Renderer/OrthographicCamera.cpp @@ -1,21 +1,21 @@ -#include "sspch.h" -#include "StarStudio/Renderer/OrthographicCamera.h" +#include "sepch.h" +#include "StarEngine/Renderer/OrthographicCamera.h" #include -namespace StarStudio { +namespace StarEngine { OrthographicCamera::OrthographicCamera(float left, float right, float bottom, float top) : m_ProjectionMatrix(glm::ortho(left, right, bottom, top, -1.0f, 1.0f)), m_ViewMatrix(1.0f) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); m_ViewProjectionMatrix = m_ProjectionMatrix * m_ViewMatrix; } void OrthographicCamera::SetProjection(float left, float right, float bottom, float top) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); m_ProjectionMatrix = glm::ortho(left, right, bottom, top, -1.0f, 1.0f); m_ViewProjectionMatrix = m_ProjectionMatrix * m_ViewMatrix; @@ -23,7 +23,7 @@ namespace StarStudio { void OrthographicCamera::RecalculateViewMatrix() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); glm::mat4 transform = glm::translate(glm::mat4(1.0f), m_Position) * glm::rotate(glm::mat4(1.0f), glm::radians(m_Rotation), glm::vec3(0, 0, 1)); diff --git a/StarStudio/src/StarStudio/Renderer/OrthographicCamera.h b/StarEngine/src/StarEngine/Renderer/OrthographicCamera.h similarity index 97% rename from StarStudio/src/StarStudio/Renderer/OrthographicCamera.h rename to StarEngine/src/StarEngine/Renderer/OrthographicCamera.h index d53703d3..6c32e0d6 100644 --- a/StarStudio/src/StarStudio/Renderer/OrthographicCamera.h +++ b/StarEngine/src/StarEngine/Renderer/OrthographicCamera.h @@ -4,7 +4,7 @@ #include "glm/ext/matrix_clip_space.hpp" -namespace StarStudio { +namespace StarEngine { class OrthographicCamera { diff --git a/StarStudio/src/StarStudio/Renderer/OrthographicCameraController.cpp b/StarEngine/src/StarEngine/Renderer/OrthographicCameraController.cpp similarity index 78% rename from StarStudio/src/StarStudio/Renderer/OrthographicCameraController.cpp rename to StarEngine/src/StarEngine/Renderer/OrthographicCameraController.cpp index 1c35056a..15ef54ab 100644 --- a/StarStudio/src/StarStudio/Renderer/OrthographicCameraController.cpp +++ b/StarEngine/src/StarEngine/Renderer/OrthographicCameraController.cpp @@ -1,10 +1,10 @@ -#include "sspch.h" -#include "StarStudio/Renderer/OrthographicCameraController.h" +#include "sepch.h" +#include "StarEngine/Renderer/OrthographicCameraController.h" -#include "StarStudio/Core/Input.h" -#include "StarStudio/Core/KeyCodes.h" +#include "StarEngine/Core/Input.h" +#include "StarEngine/Core/KeyCodes.h" -namespace StarStudio { +namespace StarEngine { OrthographicCameraController::OrthographicCameraController(float aspectRatio, bool rotation) : m_AspectRatio(aspectRatio), m_Camera(-m_AspectRatio * m_ZoomLevel, m_AspectRatio* m_ZoomLevel, -m_ZoomLevel, m_ZoomLevel), m_Rotation(rotation), m_CameraPosition(), m_CameraRotation() @@ -13,25 +13,25 @@ namespace StarStudio { } void OrthographicCameraController::OnUpdate(Timestep ts) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); - if (Input::IsKeyPressed(SS_KEY_A)) + if (Input::IsKeyPressed(SE_KEY_A)) { m_CameraPosition.x -= cos(glm::radians(m_CameraRotation)) * m_CameraTranslationSpeed * ts; m_CameraPosition.y -= sin(glm::radians(m_CameraRotation)) * m_CameraTranslationSpeed * ts; } - else if (Input::IsKeyPressed(SS_KEY_D)) + else if (Input::IsKeyPressed(SE_KEY_D)) { m_CameraPosition.x += cos(glm::radians(m_CameraRotation)) * m_CameraTranslationSpeed * ts; m_CameraPosition.y += sin(glm::radians(m_CameraRotation)) * m_CameraTranslationSpeed * ts; } - if (Input::IsKeyPressed(SS_KEY_W)) + if (Input::IsKeyPressed(SE_KEY_W)) { m_CameraPosition.x += -sin(glm::radians(m_CameraRotation)) * m_CameraTranslationSpeed * ts; m_CameraPosition.y += cos(glm::radians(m_CameraRotation)) * m_CameraTranslationSpeed * ts; } - else if (Input::IsKeyPressed(SS_KEY_S)) + else if (Input::IsKeyPressed(SE_KEY_S)) { m_CameraPosition.x -= -sin(glm::radians(m_CameraRotation)) * m_CameraTranslationSpeed * ts; m_CameraPosition.y -= cos(glm::radians(m_CameraRotation)) * m_CameraTranslationSpeed * ts; @@ -39,10 +39,10 @@ namespace StarStudio { if (m_Rotation) { - if (Input::IsKeyPressed(SS_KEY_Q)) + if (Input::IsKeyPressed(SE_KEY_Q)) m_CameraRotation += m_CameraRotationSpeed * ts; - if (Input::IsKeyPressed(SS_KEY_E)) + if (Input::IsKeyPressed(SE_KEY_E)) m_CameraRotation -= m_CameraRotationSpeed * ts; m_Camera.SetRotation(m_CameraRotation); @@ -59,16 +59,16 @@ namespace StarStudio { void OrthographicCameraController::OnEvent(Event& e) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); EventDispatcher dispatcher(e); - dispatcher.Dispatch(SS_BIND_EVENT_FN(OrthographicCameraController::OnMouseScrolled)); - dispatcher.Dispatch(SS_BIND_EVENT_FN(OrthographicCameraController::OnWindowResized)); + dispatcher.Dispatch(SE_BIND_EVENT_FN(OrthographicCameraController::OnMouseScrolled)); + dispatcher.Dispatch(SE_BIND_EVENT_FN(OrthographicCameraController::OnWindowResized)); } bool OrthographicCameraController::OnMouseScrolled(MouseScrolledEvent& e) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); m_ZoomLevel -= e.GetYOffset() * 0.25f; m_ZoomLevel = std::max(m_ZoomLevel, 0.25f); @@ -78,7 +78,7 @@ namespace StarStudio { bool OrthographicCameraController::OnWindowResized(WindowResizeEvent& e) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); m_AspectRatio = (float)e.GetWidth() / (float)e.GetHeight(); m_Camera.SetProjection(-m_AspectRatio * m_ZoomLevel, m_AspectRatio * m_ZoomLevel, -m_ZoomLevel, m_ZoomLevel); diff --git a/StarStudio/src/StarStudio/Renderer/OrthographicCameraController.h b/StarEngine/src/StarEngine/Renderer/OrthographicCameraController.h similarity index 79% rename from StarStudio/src/StarStudio/Renderer/OrthographicCameraController.h rename to StarEngine/src/StarEngine/Renderer/OrthographicCameraController.h index cd40e793..81667352 100644 --- a/StarStudio/src/StarStudio/Renderer/OrthographicCameraController.h +++ b/StarEngine/src/StarEngine/Renderer/OrthographicCameraController.h @@ -1,11 +1,12 @@ #pragma once -#include "StarStudio/Renderer/OrthographicCamera.h" -#include "StarStudio/Core/Timestep.h" -#include "StarStudio/Events/ApplicationEvent.h" -#include "StarStudio/Events/MouseEvent.h" +#include "StarEngine/Renderer/OrthographicCamera.h" +#include "StarEngine/Core/Timestep.h" -namespace StarStudio { +#include "StarEngine/Events/ApplicationEvent.h" +#include "StarEngine/Events/MouseEvent.h" + +namespace StarEngine { class OrthographicCameraController { diff --git a/StarEngine/src/StarEngine/Renderer/RenderCommand.cpp b/StarEngine/src/StarEngine/Renderer/RenderCommand.cpp new file mode 100644 index 00000000..412f769f --- /dev/null +++ b/StarEngine/src/StarEngine/Renderer/RenderCommand.cpp @@ -0,0 +1,7 @@ +#include "sepch.h" +#include "StarEngine/Renderer/RenderCommand.h" + +namespace StarEngine +{ + Scope RenderCommand::s_RendererAPI = RendererAPI::Create(); +} \ No newline at end of file diff --git a/StarStudio/src/StarStudio/Renderer/RenderCommand.h b/StarEngine/src/StarEngine/Renderer/RenderCommand.h similarity index 90% rename from StarStudio/src/StarStudio/Renderer/RenderCommand.h rename to StarEngine/src/StarEngine/Renderer/RenderCommand.h index 7cbdaa8d..26ad7f95 100644 --- a/StarStudio/src/StarStudio/Renderer/RenderCommand.h +++ b/StarEngine/src/StarEngine/Renderer/RenderCommand.h @@ -1,8 +1,8 @@ #pragma once -#include "StarStudio/Renderer/RendererAPI.h" +#include "StarEngine/Renderer/RendererAPI.h" -namespace StarStudio +namespace StarEngine { class RenderCommand { diff --git a/StarStudio/src/StarStudio/Renderer/Renderer.cpp b/StarEngine/src/StarEngine/Renderer/Renderer.cpp similarity index 84% rename from StarStudio/src/StarStudio/Renderer/Renderer.cpp rename to StarEngine/src/StarEngine/Renderer/Renderer.cpp index f5f92c2d..87d38b2e 100644 --- a/StarStudio/src/StarStudio/Renderer/Renderer.cpp +++ b/StarEngine/src/StarEngine/Renderer/Renderer.cpp @@ -1,15 +1,15 @@ -#include "sspch.h" +#include "sepch.h" -#include "StarStudio/Renderer/Renderer.h" -#include "StarStudio/Renderer/Renderer2D.h" +#include "StarEngine/Renderer/Renderer.h" +#include "StarEngine/Renderer/Renderer2D.h" -namespace StarStudio { +namespace StarEngine { Scope Renderer::s_SceneData = CreateScope(); void Renderer::Init() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); RenderCommand::Init(); Renderer2D::Init(); diff --git a/StarStudio/src/StarStudio/Renderer/Renderer.h b/StarEngine/src/StarEngine/Renderer/Renderer.h similarity index 77% rename from StarStudio/src/StarStudio/Renderer/Renderer.h rename to StarEngine/src/StarEngine/Renderer/Renderer.h index 08c37bdf..6bfc4c0a 100644 --- a/StarStudio/src/StarStudio/Renderer/Renderer.h +++ b/StarEngine/src/StarEngine/Renderer/Renderer.h @@ -1,11 +1,11 @@ #pragma once -#include "StarStudio/Renderer/RenderCommand.h" +#include "StarEngine/Renderer/RenderCommand.h" -#include "StarStudio/Renderer/OrthographicCamera.h" -#include "StarStudio/Renderer/Shader.h" +#include "StarEngine/Renderer/OrthographicCamera.h" +#include "StarEngine/Renderer/Shader.h" -namespace StarStudio { +namespace StarEngine { class Renderer { diff --git a/StarStudio/src/StarStudio/Renderer/Renderer2D.cpp b/StarEngine/src/StarEngine/Renderer/Renderer2D.cpp similarity index 96% rename from StarStudio/src/StarStudio/Renderer/Renderer2D.cpp rename to StarEngine/src/StarEngine/Renderer/Renderer2D.cpp index c91f7694..67b8a133 100644 --- a/StarStudio/src/StarStudio/Renderer/Renderer2D.cpp +++ b/StarEngine/src/StarEngine/Renderer/Renderer2D.cpp @@ -1,13 +1,13 @@ -#include "sspch.h" -#include "StarStudio/Renderer/Renderer2D.h" +#include "sepch.h" +#include "StarEngine/Renderer/Renderer2D.h" -#include "StarStudio/Renderer/VertexArray.h" -#include "StarStudio/Renderer/Shader.h" -#include "StarStudio/Renderer/RenderCommand.h" +#include "StarEngine/Renderer/VertexArray.h" +#include "StarEngine/Renderer/Shader.h" +#include "StarEngine/Renderer/RenderCommand.h" #include -namespace StarStudio { +namespace StarEngine { struct QuadVertex { @@ -46,7 +46,7 @@ namespace StarStudio { void Renderer2D::Init() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); s_Data.QuadVertexArray = VertexArray::Create(); @@ -105,14 +105,14 @@ namespace StarStudio { void Renderer2D::Shutdown() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); delete[] s_Data.QuadVertexBufferBase; } void Renderer2D::BeginScene(const OrthographicCamera& camera) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); s_Data.TextureShader->Bind(); s_Data.TextureShader->SetMat4("u_ViewProjection", camera.GetViewProjectionMatrix()); @@ -125,7 +125,7 @@ namespace StarStudio { void Renderer2D::EndScene() { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); uint32_t dataSize = (uint32_t)((uint8_t*)s_Data.QuadVertexBufferPtr - (uint8_t*)s_Data.QuadVertexBufferBase); s_Data.QuadVertexBuffer->SetData(s_Data.QuadVertexBufferBase, dataSize); @@ -163,7 +163,7 @@ namespace StarStudio { void Renderer2D::DrawQuad(const glm::vec3& position, const glm::vec2& size, const glm::vec4& color) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); constexpr size_t quadVertexCount = 4; const float textureIndex = 0.0f; // White Texture @@ -198,7 +198,7 @@ namespace StarStudio { void Renderer2D::DrawQuad(const glm::vec3& position, const glm::vec2& size, const Ref& texture, float tilingFactor, const glm::vec4& tintColor) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); constexpr size_t quadVertexCount = 4; constexpr glm::vec2 textureCoords[] = { { 0.0f, 0.0f }, { 1.0f, 0.0f }, { 1.0f, 1.0f }, { 0.0f, 1.0f } }; @@ -251,7 +251,7 @@ namespace StarStudio { void Renderer2D::DrawRotatedQuad(const glm::vec3& position, const glm::vec2& size, float rotation, const glm::vec4& color) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); constexpr size_t quadVertexCount = 4; const float textureIndex = 0.0f; // White Texture @@ -287,7 +287,7 @@ namespace StarStudio { void Renderer2D::DrawRotatedQuad(const glm::vec3& position, const glm::vec2& size, float rotation, const Ref& texture, float tilingFactor, const glm::vec4& tintColor) { - SS_PROFILE_FUNCTION(); + SE_PROFILE_FUNCTION(); constexpr size_t quadVertexCount = 4; constexpr glm::vec2 textureCoords[] = { { 0.0f, 0.0f }, { 1.0f, 0.0f }, { 1.0f, 1.0f }, { 0.0f, 1.0f } }; diff --git a/StarStudio/src/StarStudio/Renderer/Renderer2D.h b/StarEngine/src/StarEngine/Renderer/Renderer2D.h similarity index 93% rename from StarStudio/src/StarStudio/Renderer/Renderer2D.h rename to StarEngine/src/StarEngine/Renderer/Renderer2D.h index 82045860..10bcca5f 100644 --- a/StarStudio/src/StarStudio/Renderer/Renderer2D.h +++ b/StarEngine/src/StarEngine/Renderer/Renderer2D.h @@ -1,10 +1,10 @@ #pragma once -#include "StarStudio/Renderer/OrthographicCamera.h" +#include "StarEngine/Renderer/OrthographicCamera.h" -#include "StarStudio/Renderer/Texture.h" +#include "StarEngine/Renderer/Texture.h" -namespace StarStudio { +namespace StarEngine { class Renderer2D { public: diff --git a/StarStudio/src/StarStudio/Renderer/RendererAPI.cpp b/StarEngine/src/StarEngine/Renderer/RendererAPI.cpp similarity index 63% rename from StarStudio/src/StarStudio/Renderer/RendererAPI.cpp rename to StarEngine/src/StarEngine/Renderer/RendererAPI.cpp index 322126bb..fd082fd8 100644 --- a/StarStudio/src/StarStudio/Renderer/RendererAPI.cpp +++ b/StarEngine/src/StarEngine/Renderer/RendererAPI.cpp @@ -1,9 +1,9 @@ -#include "sspch.h" -#include "StarStudio/Renderer/RendererAPI.h" +#include "sepch.h" +#include "StarEngine/Renderer/RendererAPI.h" #include "Platform/OpenGL/OpenGLRendererAPI.h" -namespace StarStudio { +namespace StarEngine { RendererAPI::API RendererAPI::s_API = RendererAPI::API::OpenGL; @@ -11,11 +11,11 @@ namespace StarStudio { { switch (s_API) { - case RendererAPI::API::None: SS_CORE_ASSERT(false, "RendererAPI::None is currently not supported!"); return nullptr; + case RendererAPI::API::None: SE_CORE_ASSERT(false, "RendererAPI::None is currently not supported!"); return nullptr; case RendererAPI::API::OpenGL: return CreateScope(); } - SS_CORE_ASSERT(false, "Unknown RendererAPI!"); + SE_CORE_ASSERT(false, "Unknown RendererAPI!"); return nullptr; } diff --git a/StarStudio/src/StarStudio/Renderer/RendererAPI.h b/StarEngine/src/StarEngine/Renderer/RendererAPI.h similarity index 88% rename from StarStudio/src/StarStudio/Renderer/RendererAPI.h rename to StarEngine/src/StarEngine/Renderer/RendererAPI.h index 3d9154c0..c3275187 100644 --- a/StarStudio/src/StarStudio/Renderer/RendererAPI.h +++ b/StarEngine/src/StarEngine/Renderer/RendererAPI.h @@ -2,9 +2,9 @@ #include -#include "StarStudio/Renderer/VertexArray.h" +#include "StarEngine/Renderer/VertexArray.h" -namespace StarStudio { +namespace StarEngine { class RendererAPI { diff --git a/StarStudio/src/StarStudio/Renderer/Shader.cpp b/StarEngine/src/StarEngine/Renderer/Shader.cpp similarity index 75% rename from StarStudio/src/StarStudio/Renderer/Shader.cpp rename to StarEngine/src/StarEngine/Renderer/Shader.cpp index a4a7c532..b0f1b337 100644 --- a/StarStudio/src/StarStudio/Renderer/Shader.cpp +++ b/StarEngine/src/StarEngine/Renderer/Shader.cpp @@ -1,20 +1,20 @@ -#include "sspch.h" -#include "StarStudio/Renderer/Shader.h" +#include "sepch.h" +#include "StarEngine/Renderer/Shader.h" -#include "StarStudio/Renderer/Renderer.h" +#include "StarEngine/Renderer/Renderer.h" #include "Platform/OpenGL/OpenGLShader.h" -namespace StarStudio { +namespace StarEngine { Ref Shader::Create(const std::string& filepath) { switch (Renderer::GetAPI()) { - case RendererAPI::API::None: SS_CORE_ASSERT(false, "RendererAPI::None is currently not supported!"); return nullptr; + case RendererAPI::API::None: SE_CORE_ASSERT(false, "RendererAPI::None is currently not supported!"); return nullptr; case RendererAPI::API::OpenGL: return CreateRef(filepath); } - SS_CORE_ASSERT(false, "Unknown RendererAPI!"); + SE_CORE_ASSERT(false, "Unknown RendererAPI!"); return nullptr; } @@ -23,17 +23,17 @@ namespace StarStudio { { switch (Renderer::GetAPI()) { - case RendererAPI::API::None: SS_CORE_ASSERT(false, "RendererAPI::None is currently not supported!"); return nullptr; + case RendererAPI::API::None: SE_CORE_ASSERT(false, "RendererAPI::None is currently not supported!"); return nullptr; case RendererAPI::API::OpenGL: return CreateRef(name, vertexSrc, fragmentSrc);; } - SS_CORE_ASSERT(false, "Unknown RendererAPI!"); + SE_CORE_ASSERT(false, "Unknown RendererAPI!"); return nullptr; } void ShaderLibrary::Add(const std::string& name, const Ref& shader) { - SS_CORE_ASSERT(!Exists(name), "Shader already exists!"); + SE_CORE_ASSERT(!Exists(name), "Shader already exists!"); m_Shaders[name] = shader; } @@ -59,7 +59,7 @@ namespace StarStudio { Ref ShaderLibrary::Get(const std::string& name) { - SS_CORE_ASSERT(Exists(name), "Shader not found!"); + SE_CORE_ASSERT(Exists(name), "Shader not found!"); return m_Shaders[name]; } diff --git a/StarStudio/src/StarStudio/Renderer/Shader.h b/StarEngine/src/StarEngine/Renderer/Shader.h similarity index 98% rename from StarStudio/src/StarStudio/Renderer/Shader.h rename to StarEngine/src/StarEngine/Renderer/Shader.h index 825e6e68..10f41b1b 100644 --- a/StarStudio/src/StarStudio/Renderer/Shader.h +++ b/StarEngine/src/StarEngine/Renderer/Shader.h @@ -5,7 +5,7 @@ #include -namespace StarStudio { +namespace StarEngine { class Shader { diff --git a/StarStudio/src/StarStudio/Renderer/Texture.cpp b/StarEngine/src/StarEngine/Renderer/Texture.cpp similarity index 62% rename from StarStudio/src/StarStudio/Renderer/Texture.cpp rename to StarEngine/src/StarEngine/Renderer/Texture.cpp index 10bb611d..6a8e6a42 100644 --- a/StarStudio/src/StarStudio/Renderer/Texture.cpp +++ b/StarEngine/src/StarEngine/Renderer/Texture.cpp @@ -1,19 +1,19 @@ -#include "sspch.h" -#include "StarStudio/Renderer/Texture.h" +#include "sepch.h" +#include "StarEngine/Renderer/Texture.h" -#include "StarStudio/Renderer/Renderer.h" +#include "StarEngine/Renderer/Renderer.h" #include "Platform/OpenGL/OpenGLTexture.h" -namespace StarStudio +namespace StarEngine { Ref Texture2D::Create(uint32_t width, uint32_t height) { switch (Renderer::GetAPI()) { - case RendererAPI::API::None: SS_CORE_ASSERT(false, "RendererAPI::None is currently not supported!"); return nullptr; + case RendererAPI::API::None: SE_CORE_ASSERT(false, "RendererAPI::None is currently not supported!"); return nullptr; case RendererAPI::API::OpenGL: return CreateRef(width, height); } - SS_CORE_ASSERT(false, "Unknown RendererAPI!"); + SE_CORE_ASSERT(false, "Unknown RendererAPI!"); return nullptr; } @@ -21,11 +21,11 @@ namespace StarStudio { switch (Renderer::GetAPI()) { - case RendererAPI::API::None: SS_CORE_ASSERT(false, "RendererAPI::None is currently not supported") return nullptr; + case RendererAPI::API::None: SE_CORE_ASSERT(false, "RendererAPI::None is currently not supported") return nullptr; case RendererAPI::API::OpenGL: return CreateRef(path); } - SS_CORE_ASSERT(false, "Unknown RendererAPI!"); + SE_CORE_ASSERT(false, "Unknown RendererAPI!"); return nullptr; } diff --git a/StarStudio/src/StarStudio/Renderer/Texture.h b/StarEngine/src/StarEngine/Renderer/Texture.h similarity index 90% rename from StarStudio/src/StarStudio/Renderer/Texture.h rename to StarEngine/src/StarEngine/Renderer/Texture.h index 002754f8..13e5a90c 100644 --- a/StarStudio/src/StarStudio/Renderer/Texture.h +++ b/StarEngine/src/StarEngine/Renderer/Texture.h @@ -2,9 +2,9 @@ #include -#include "StarStudio/Core/Base.h" +#include "StarEngine/Core/Base.h" -namespace StarStudio{ +namespace StarEngine { class Texture { diff --git a/StarStudio/src/StarStudio/Renderer/VertexArray.cpp b/StarEngine/src/StarEngine/Renderer/VertexArray.cpp similarity index 53% rename from StarStudio/src/StarStudio/Renderer/VertexArray.cpp rename to StarEngine/src/StarEngine/Renderer/VertexArray.cpp index a58f7a7f..1183d35c 100644 --- a/StarStudio/src/StarStudio/Renderer/VertexArray.cpp +++ b/StarEngine/src/StarEngine/Renderer/VertexArray.cpp @@ -1,20 +1,20 @@ -#include "sspch.h" -#include "StarStudio/Renderer/VertexArray.h" +#include "sepch.h" +#include "StarEngine/Renderer/VertexArray.h" -#include "StarStudio/Renderer/Renderer.h" +#include "StarEngine/Renderer/Renderer.h" #include "Platform/OpenGL/OpenGLVertexArray.h" -namespace StarStudio { +namespace StarEngine { Ref VertexArray::Create() { switch (Renderer::GetAPI()) { - case RendererAPI::API::None: SS_CORE_ASSERT(false, "RendererAPI::None is currently not supported") return nullptr; + case RendererAPI::API::None: SE_CORE_ASSERT(false, "RendererAPI::None is currently not supported") return nullptr; case RendererAPI::API::OpenGL: return CreateRef(); } - SS_CORE_ASSERT(false, "Unknown RendererAPI!"); + SE_CORE_ASSERT(false, "Unknown RendererAPI!"); return nullptr; } } \ No newline at end of file diff --git a/StarStudio/src/StarStudio/Renderer/VertexArray.h b/StarEngine/src/StarEngine/Renderer/VertexArray.h similarity index 88% rename from StarStudio/src/StarStudio/Renderer/VertexArray.h rename to StarEngine/src/StarEngine/Renderer/VertexArray.h index 2991dc26..9d890e80 100644 --- a/StarStudio/src/StarStudio/Renderer/VertexArray.h +++ b/StarEngine/src/StarEngine/Renderer/VertexArray.h @@ -1,9 +1,9 @@ #pragma once #include -#include "StarStudio/Renderer/Buffer.h" +#include "StarEngine/Renderer/Buffer.h" -namespace StarStudio { +namespace StarEngine { class VertexArray { diff --git a/StarEngine/src/sepch.cpp b/StarEngine/src/sepch.cpp new file mode 100644 index 00000000..1f7080a4 --- /dev/null +++ b/StarEngine/src/sepch.cpp @@ -0,0 +1 @@ +#include "sepch.h" \ No newline at end of file diff --git a/StarStudio/src/sspch.h b/StarEngine/src/sepch.h similarity index 72% rename from StarStudio/src/sspch.h rename to StarEngine/src/sepch.h index b7c1414e..921cacc3 100644 --- a/StarStudio/src/sspch.h +++ b/StarEngine/src/sepch.h @@ -13,10 +13,10 @@ #include #include -#include "StarStudio/Core/Log.h" +#include "StarEngine/Core/Log.h" -#include "StarStudio/Debug/Instrumentor.h" +#include "StarEngine/Debug/Instrumentor.h" -#ifdef SS_PLATFORM_WINDOWS +#ifdef SE_PLATFORM_WINDOWS #include #endif \ No newline at end of file diff --git a/StarEngine/vendor/GLAD/bin/Debug-windows-x86_64/GLAD/GLAD.idb b/StarEngine/vendor/GLAD/bin/Debug-windows-x86_64/GLAD/GLAD.idb new file mode 100644 index 00000000..f36408ce Binary files /dev/null and b/StarEngine/vendor/GLAD/bin/Debug-windows-x86_64/GLAD/GLAD.idb differ diff --git a/StarEngine/vendor/GLAD/bin/Debug-windows-x86_64/GLAD/GLAD.lib b/StarEngine/vendor/GLAD/bin/Debug-windows-x86_64/GLAD/GLAD.lib new file mode 100644 index 00000000..de1b27d9 Binary files /dev/null and b/StarEngine/vendor/GLAD/bin/Debug-windows-x86_64/GLAD/GLAD.lib differ diff --git a/StarEngine/vendor/GLAD/bin/Debug-windows-x86_64/GLAD/GLAD.pdb b/StarEngine/vendor/GLAD/bin/Debug-windows-x86_64/GLAD/GLAD.pdb new file mode 100644 index 00000000..6088c638 Binary files /dev/null and b/StarEngine/vendor/GLAD/bin/Debug-windows-x86_64/GLAD/GLAD.pdb differ diff --git a/StarStudio/vendor/GLAD/include/KHR/khrplatform.h b/StarEngine/vendor/GLAD/include/KHR/khrplatform.h similarity index 100% rename from StarStudio/vendor/GLAD/include/KHR/khrplatform.h rename to StarEngine/vendor/GLAD/include/KHR/khrplatform.h diff --git a/StarStudio/vendor/GLAD/include/glad/glad.h b/StarEngine/vendor/GLAD/include/glad/glad.h similarity index 100% rename from StarStudio/vendor/GLAD/include/glad/glad.h rename to StarEngine/vendor/GLAD/include/glad/glad.h diff --git a/StarStudio/vendor/GLAD/premake5.lua b/StarEngine/vendor/GLAD/premake5.lua similarity index 100% rename from StarStudio/vendor/GLAD/premake5.lua rename to StarEngine/vendor/GLAD/premake5.lua diff --git a/StarStudio/vendor/GLAD/src/glad.c b/StarEngine/vendor/GLAD/src/glad.c similarity index 100% rename from StarStudio/vendor/GLAD/src/glad.c rename to StarEngine/vendor/GLAD/src/glad.c diff --git a/StarEngine/vendor/GLFW b/StarEngine/vendor/GLFW new file mode 160000 index 00000000..026a148d --- /dev/null +++ b/StarEngine/vendor/GLFW @@ -0,0 +1 @@ +Subproject commit 026a148d7dd78d597de380c4e77ca0869f0ceaab diff --git a/StarEngine/vendor/glm b/StarEngine/vendor/glm new file mode 160000 index 00000000..2d4c4b4d --- /dev/null +++ b/StarEngine/vendor/glm @@ -0,0 +1 @@ +Subproject commit 2d4c4b4dd31fde06cfffad7915c2b3006402322f diff --git a/StarEngine/vendor/imgui b/StarEngine/vendor/imgui new file mode 160000 index 00000000..6d276345 --- /dev/null +++ b/StarEngine/vendor/imgui @@ -0,0 +1 @@ +Subproject commit 6d276345025104b1f67006cbf7c411cf285d8a9a diff --git a/StarEngine/vendor/spdlog b/StarEngine/vendor/spdlog new file mode 160000 index 00000000..3335c380 --- /dev/null +++ b/StarEngine/vendor/spdlog @@ -0,0 +1 @@ +Subproject commit 3335c380a08c5e0f5117a66622df6afdb3d74959 diff --git a/StarStudio/vendor/stb_image/stb_image.cpp b/StarEngine/vendor/stb_image/stb_image.cpp similarity index 75% rename from StarStudio/vendor/stb_image/stb_image.cpp rename to StarEngine/vendor/stb_image/stb_image.cpp index 86b8fb91..b6ed214b 100644 --- a/StarStudio/vendor/stb_image/stb_image.cpp +++ b/StarEngine/vendor/stb_image/stb_image.cpp @@ -1,4 +1,4 @@ -#include "sspch.h" +#include "sepch.h" #define STB_IMAGE_IMPLEMENTATION #include "stb_image.h" diff --git a/StarStudio/vendor/stb_image/stb_image.h b/StarEngine/vendor/stb_image/stb_image.h similarity index 100% rename from StarStudio/vendor/stb_image/stb_image.h rename to StarEngine/vendor/stb_image/stb_image.h diff --git a/StarStudio/src/StarStudio.h b/StarStudio/src/StarStudio.h deleted file mode 100644 index 5a7cbff1..00000000 --- a/StarStudio/src/StarStudio.h +++ /dev/null @@ -1,29 +0,0 @@ -#pragma once - -// for use by StarStudio applications -#include "StarStudio/Core/Application.h" -#include "StarStudio/Core/Layer.h" -#include "StarStudio/Core/Log.h" - -#include "StarStudio/Core/Timestep.h" - -#include "StarStudio/ImGui/ImGuiLayer.h" - -// ---Input------------------------- -#include "StarStudio/Core/Input.h" -#include "StarStudio/Core/KeyCodes.h" -#include "StarStudio/Core/MouseCodes.h" -// --------------------------------- - -// ---Renderer------------------------ -#include "StarStudio/Renderer/Renderer.h" -#include "StarStudio/Renderer/Renderer2D.h" -#include "StarStudio/Renderer/RenderCommand.h" - -#include "StarStudio/Renderer/Buffer.h" -#include "StarStudio/Renderer/Shader.h" -#include "StarStudio/Renderer/Texture.h" -#include "StarStudio/Renderer/VertexArray.h" - -#include "StarStudio/Renderer/OrthographicCamera.h" -// ----------------------------------- \ No newline at end of file diff --git a/StarStudio/src/StarStudio/Core/EntryPoint.h b/StarStudio/src/StarStudio/Core/EntryPoint.h deleted file mode 100644 index cb12ea61..00000000 --- a/StarStudio/src/StarStudio/Core/EntryPoint.h +++ /dev/null @@ -1,23 +0,0 @@ -#pragma once -#include "StarStudio/Core/Base.h" - -#ifdef SS_PLATFORM_WINDOWS - -extern StarStudio::Application* StarStudio::CreateApplication(); - - int main(int argc, char** argv) { - StarStudio::Log::Init(); - - SS_PROFILE_BEGIN_SESSION("Startup", "StarStudioProfile-Startup.json"); - auto app = StarStudio::CreateApplication(); - SS_PROFILE_END_SESSION(); - - SS_PROFILE_BEGIN_SESSION("Runtime", "StarStudioProfile-Runtime.json"); - app->Run(); - SS_PROFILE_END_SESSION(); - - SS_PROFILE_BEGIN_SESSION("Shutdown", "StarStudioProfile-Shutdown.json"); - delete app; - SS_PROFILE_END_SESSION(); - } -#endif \ No newline at end of file diff --git a/StarStudio/src/StarStudio/Core/KeyCodes.h b/StarStudio/src/StarStudio/Core/KeyCodes.h deleted file mode 100644 index 706887d2..00000000 --- a/StarStudio/src/StarStudio/Core/KeyCodes.h +++ /dev/null @@ -1,272 +0,0 @@ -#pragma once - -namespace StarStudio -{ - typedef enum class KeyCode : uint16_t - { - // From glfw3.h - Space = 32, - Apostrophe = 39, /* ' */ - Comma = 44, /* , */ - Minus = 45, /* - */ - Period = 46, /* . */ - Slash = 47, /* / */ - - D0 = 48, /* 0 */ - D1 = 49, /* 1 */ - D2 = 50, /* 2 */ - D3 = 51, /* 3 */ - D4 = 52, /* 4 */ - D5 = 53, /* 5 */ - D6 = 54, /* 6 */ - D7 = 55, /* 7 */ - D8 = 56, /* 8 */ - D9 = 57, /* 9 */ - - Semicolon = 59, /* ; */ - Equal = 61, /* = */ - - A = 65, - B = 66, - C = 67, - D = 68, - E = 69, - F = 70, - G = 71, - H = 72, - I = 73, - J = 74, - K = 75, - L = 76, - M = 77, - N = 78, - O = 79, - P = 80, - Q = 81, - R = 82, - S = 83, - T = 84, - U = 85, - V = 86, - W = 87, - X = 88, - Y = 89, - Z = 90, - - LeftBracket = 91, /* [ */ - Backslash = 92, /* \ */ - RightBracket = 93, /* ] */ - GraveAccent = 96, /* ` */ - - World1 = 161, /* non-US #1 */ - World2 = 162, /* non-US #2 */ - - /* Function keys */ - Escape = 256, - Enter = 257, - Tab = 258, - Backspace = 259, - Insert = 260, - Delete = 261, - Right = 262, - Left = 263, - Down = 264, - Up = 265, - PageUp = 266, - PageDown = 267, - Home = 268, - End = 269, - CapsLock = 280, - ScrollLock = 281, - NumLock = 282, - PrintScreen = 283, - Pause = 284, - F1 = 290, - F2 = 291, - F3 = 292, - F4 = 293, - F5 = 294, - F6 = 295, - F7 = 296, - F8 = 297, - F9 = 298, - F10 = 299, - F11 = 300, - F12 = 301, - F13 = 302, - F14 = 303, - F15 = 304, - F16 = 305, - F17 = 306, - F18 = 307, - F19 = 308, - F20 = 309, - F21 = 310, - F22 = 311, - F23 = 312, - F24 = 313, - F25 = 314, - - /* Keypad */ - KP0 = 320, - KP1 = 321, - KP2 = 322, - KP3 = 323, - KP4 = 324, - KP5 = 325, - KP6 = 326, - KP7 = 327, - KP8 = 328, - KP9 = 329, - KPDecimal = 330, - KPDivide = 331, - KPMultiply = 332, - KPSubtract = 333, - KPAdd = 334, - KPEnter = 335, - KPEqual = 336, - - LeftShift = 340, - LeftControl = 341, - LeftAlt = 342, - LeftSuper = 343, - RightShift = 344, - RightControl = 345, - RightAlt = 346, - RightSuper = 347, - Menu = 348 - } Key; - - inline std::ostream& operator<<(std::ostream& os, KeyCode keyCode) - { - os << static_cast(keyCode); - return os; - } -} - -// From glfw3.h -#define SS_KEY_SPACE ::StarStudio::Key::Space -#define SS_KEY_APOSTROPHE ::StarStudio::Key::Apostrophe /* ' */ -#define SS_KEY_COMMA ::StarStudio::Key::Comma /* , */ -#define SS_KEY_MINUS ::StarStudio::Key::Minus /* - */ -#define SS_KEY_PERIOD ::StarStudio::Key::Period /* . */ -#define SS_KEY_SLASH ::StarStudio::Key::Slash /* / */ -#define SS_KEY_0 ::StarStudio::Key::D0 -#define SS_KEY_1 ::StarStudio::Key::D1 -#define SS_KEY_2 ::StarStudio::Key::D2 -#define SS_KEY_3 ::StarStudio::Key::D3 -#define SS_KEY_4 ::StarStudio::Key::D4 -#define SS_KEY_5 ::StarStudio::Key::D5 -#define SS_KEY_6 ::StarStudio::Key::D6 -#define SS_KEY_7 ::StarStudio::Key::D7 -#define SS_KEY_8 ::StarStudio::Key::D8 -#define SS_KEY_9 ::StarStudio::Key::D9 -#define SS_KEY_SEMICOLON ::StarStudio::Key::Semicolon /* ; */ -#define SS_KEY_EQUAL ::StarStudio::Key::Equal /* = */ -#define SS_KEY_A ::StarStudio::Key::A -#define SS_KEY_B ::StarStudio::Key::B -#define SS_KEY_C ::StarStudio::Key::C -#define SS_KEY_D ::StarStudio::Key::D -#define SS_KEY_E ::StarStudio::Key::E -#define SS_KEY_F ::StarStudio::Key::F -#define SS_KEY_G ::StarStudio::Key::G -#define SS_KEY_H ::StarStudio::Key::H -#define SS_KEY_I ::StarStudio::Key::I -#define SS_KEY_J ::StarStudio::Key::J -#define SS_KEY_K ::StarStudio::Key::K -#define SS_KEY_L ::StarStudio::Key::L -#define SS_KEY_M ::StarStudio::Key::M -#define SS_KEY_N ::StarStudio::Key::N -#define SS_KEY_O ::StarStudio::Key::O -#define SS_KEY_P ::StarStudio::Key::P -#define SS_KEY_Q ::StarStudio::Key::Q -#define SS_KEY_R ::StarStudio::Key::R -#define SS_KEY_S ::StarStudio::Key::S -#define SS_KEY_T ::StarStudio::Key::T -#define SS_KEY_U ::StarStudio::Key::U -#define SS_KEY_V ::StarStudio::Key::V -#define SS_KEY_W ::StarStudio::Key::W -#define SS_KEY_X ::StarStudio::Key::X -#define SS_KEY_Y ::StarStudio::Key::Y -#define SS_KEY_Z ::StarStudio::Key::Z -#define SS_KEY_LEFT_BRACKET ::StarStudio::Key::LeftBracket /* [ */ -#define SS_KEY_BACKSLASH ::StarStudio::Key::Backslash /* \ */ -#define SS_KEY_RIGHT_BRACKET ::StarStudio::Key::RightBracket /* ] */ -#define SS_KEY_GRAVE_ACCENT ::StarStudio::Key::GraveAccent /* ` */ -#define SS_KEY_WORLD_1 ::StarStudio::Key::World1 /* non-US #1 */ -#define SS_KEY_WORLD_2 ::StarStudio::Key::World2 /* non-US #2 */ - -/* Function keys */ -#define SS_KEY_ESCAPE ::StarStudio::Key::Escape -#define SS_KEY_ENTER ::StarStudio::Key::Enter -#define SS_KEY_TAB ::StarStudio::Key::Tab -#define SS_KEY_BACKSPACE ::StarStudio::Key::Backspace -#define SS_KEY_INSERT ::StarStudio::Key::Insert -#define SS_KEY_DELETE ::StarStudio::Key::Delete -#define SS_KEY_RIGHT ::StarStudio::Key::Right -#define SS_KEY_LEFT ::StarStudio::Key::Left -#define SS_KEY_DOWN ::StarStudio::Key::Down -#define SS_KEY_UP ::StarStudio::Key::Up -#define SS_KEY_PAGE_UP ::StarStudio::Key::PageUp -#define SS_KEY_PAGE_DOWN ::StarStudio::Key::PageDown -#define SS_KEY_HOME ::StarStudio::Key::Home -#define SS_KEY_END ::StarStudio::Key::End -#define SS_KEY_CAPS_LOCK ::StarStudio::Key::CapsLock -#define SS_KEY_SCROLL_LOCK ::StarStudio::Key::ScrollLock -#define SS_KEY_NUM_LOCK ::StarStudio::Key::NumLock -#define SS_KEY_PRINT_SCREEN ::StarStudio::Key::PrintScreen -#define SS_KEY_PAUSE ::StarStudio::Key::Pause -#define SS_KEY_F1 ::StarStudio::Key::F1 -#define SS_KEY_F2 ::StarStudio::Key::F2 -#define SS_KEY_F3 ::StarStudio::Key::F3 -#define SS_KEY_F4 ::StarStudio::Key::F4 -#define SS_KEY_F5 ::StarStudio::Key::F5 -#define SS_KEY_F6 ::StarStudio::Key::F6 -#define SS_KEY_F7 ::StarStudio::Key::F7 -#define SS_KEY_F8 ::StarStudio::Key::F8 -#define SS_KEY_F9 ::StarStudio::Key::F9 -#define SS_KEY_F10 ::StarStudio::Key::F10 -#define SS_KEY_F11 ::StarStudio::Key::F11 -#define SS_KEY_F12 ::StarStudio::Key::F12 -#define SS_KEY_F13 ::StarStudio::Key::F13 -#define SS_KEY_F14 ::StarStudio::Key::F14 -#define SS_KEY_F15 ::StarStudio::Key::F15 -#define SS_KEY_F16 ::StarStudio::Key::F16 -#define SS_KEY_F17 ::StarStudio::Key::F17 -#define SS_KEY_F18 ::StarStudio::Key::F18 -#define SS_KEY_F19 ::StarStudio::Key::F19 -#define SS_KEY_F20 ::StarStudio::Key::F20 -#define SS_KEY_F21 ::StarStudio::Key::F21 -#define SS_KEY_F22 ::StarStudio::Key::F22 -#define SS_KEY_F23 ::StarStudio::Key::F23 -#define SS_KEY_F24 ::StarStudio::Key::F24 -#define SS_KEY_F25 ::StarStudio::Key::F25 - -/* Keypad */ -#define SS_KEY_KP_0 ::StarStudio::Key::KP0 -#define SS_KEY_KP_1 ::StarStudio::Key::KP1 -#define SS_KEY_KP_2 ::StarStudio::Key::KP2 -#define SS_KEY_KP_3 ::StarStudio::Key::KP3 -#define SS_KEY_KP_4 ::StarStudio::Key::KP4 -#define SS_KEY_KP_5 ::StarStudio::Key::KP5 -#define SS_KEY_KP_6 ::StarStudio::Key::KP6 -#define SS_KEY_KP_7 ::StarStudio::Key::KP7 -#define SS_KEY_KP_8 ::StarStudio::Key::KP8 -#define SS_KEY_KP_9 ::StarStudio::Key::KP9 -#define SS_KEY_KP_DECIMAL ::StarStudio::Key::KPDecimal -#define SS_KEY_KP_DIVIDE ::StarStudio::Key::KPDivide -#define SS_KEY_KP_MULTIPLY ::StarStudio::Key::KPMultiply -#define SS_KEY_KP_SUBTRACT ::StarStudio::Key::KPSubtract -#define SS_KEY_KP_ADD ::StarStudio::Key::KPAdd -#define SS_KEY_KP_ENTER ::StarStudio::Key::KPEnter -#define SS_KEY_KP_EQUAL ::StarStudio::Key::KPEqual - -#define SS_KEY_LEFT_SHIFT ::StarStudio::Key::LeftShift -#define SS_KEY_LEFT_CONTROL ::StarStudio::Key::LeftControl -#define SS_KEY_LEFT_ALT ::StarStudio::Key::LeftAlt -#define SS_KEY_LEFT_SUPER ::StarStudio::Key::LeftSuper -#define SS_KEY_RIGHT_SHIFT ::StarStudio::Key::RightShift -#define SS_KEY_RIGHT_CONTROL ::StarStudio::Key::RightControl -#define SS_KEY_RIGHT_ALT ::StarStudio::Key::RightAlt -#define SS_KEY_RIGHT_SUPER ::StarStudio::Key::RightSuper -#define SS_KEY_MENU ::StarStudio::Key::Menu \ No newline at end of file diff --git a/StarStudio/src/StarStudio/Core/Log.h b/StarStudio/src/StarStudio/Core/Log.h deleted file mode 100644 index 504821df..00000000 --- a/StarStudio/src/StarStudio/Core/Log.h +++ /dev/null @@ -1,33 +0,0 @@ -#pragma once - - -#include "StarStudio/Core/Base.h" - -#include "spdlog/spdlog.h" -#include "spdlog/fmt/ostr.h" - -namespace StarStudio { - class Log - { - public: - static void Init(); - - static Ref& GetCoreLogger() { return s_CoreLogger; } - static Ref& GetClientLogger() { return s_ClientLogger; } - private: - static Ref s_CoreLogger; - static Ref s_ClientLogger; - }; -} - -#define SS_CORE_TRACE(...) ::StarStudio::Log::GetCoreLogger()->trace(__VA_ARGS__) -#define SS_CORE_INFO(...) ::StarStudio::Log::GetCoreLogger()->info(__VA_ARGS__) -#define SS_CORE_WARN(...) ::StarStudio::Log::GetCoreLogger()->warn(__VA_ARGS__) -#define SS_CORE_ERROR(...) ::StarStudio::Log::GetCoreLogger()->error(__VA_ARGS__) -#define SS_CORE_CRITICAL(...) ::StarStudio::Log::GetClientLogger()->critical(__VA_ARGS__) - -#define SS_TRACE(...) ::StarStudio::Log::GetClientLogger()->trace(__VA_ARGS__) -#define SS_INFO(...) ::StarStudio::Log::GetClientLogger()->info(__VA_ARGS__) -#define SS_WARN(...) ::StarStudio::Log::GetClientLogger()->warn(__VA_ARGS__) -#define SS_ERROR(...) ::StarStudio::Log::GetClientLogger()->error(__VA_ARGS__) -#define SS_CRITICAL(...) ::StarStudio::Log::GetClientLogger()->critical(__VA_ARGS__) \ No newline at end of file diff --git a/StarStudio/src/StarStudio/Core/MouseCodes.h b/StarStudio/src/StarStudio/Core/MouseCodes.h deleted file mode 100644 index 9cca7def..00000000 --- a/StarStudio/src/StarStudio/Core/MouseCodes.h +++ /dev/null @@ -1,41 +0,0 @@ -#pragma once - -namespace StarStudio -{ - typedef enum class MouseCode : uint16_t - { - // From glfw3.h - Button0 = 0, - Button1 = 1, - Button2 = 2, - Button3 = 3, - Button4 = 4, - Button5 = 5, - Button6 = 6, - Button7 = 7, - - ButtonLast = Button7, - ButtonLeft = Button0, - ButtonRight = Button1, - ButtonMiddle = Button2 - } Mouse; - - inline std::ostream& operator<<(std::ostream& os, MouseCode mouseCode) - { - os << static_cast(mouseCode); - return os; - } -} - -#define SS_MOUSE_BUTTON_0 ::StarStudio::Mouse::Button0 -#define SS_MOUSE_BUTTON_1 ::StarStudio::Mouse::Button1 -#define SS_MOUSE_BUTTON_2 ::StarStudio::Mouse::Button2 -#define SS_MOUSE_BUTTON_3 ::StarStudio::Mouse::Button3 -#define SS_MOUSE_BUTTON_4 ::StarStudio::Mouse::Button4 -#define SS_MOUSE_BUTTON_5 ::StarStudio::Mouse::Button5 -#define SS_MOUSE_BUTTON_6 ::StarStudio::Mouse::Button6 -#define SS_MOUSE_BUTTON_7 ::StarStudio::Mouse::Button7 -#define SS_MOUSE_BUTTON_LAST ::StarStudio::Mouse::ButtonLast -#define SS_MOUSE_BUTTON_LEFT ::StarStudio::Mouse::ButtonLeft -#define SS_MOUSE_BUTTON_RIGHT ::StarStudio::Mouse::ButtonRight -#define SS_MOUSE_BUTTON_MIDDLE ::StarStudio::Mouse::ButtonMiddle \ No newline at end of file diff --git a/StarStudio/src/StarStudio/Renderer/RenderCommand.cpp b/StarStudio/src/StarStudio/Renderer/RenderCommand.cpp deleted file mode 100644 index 3ca0f87e..00000000 --- a/StarStudio/src/StarStudio/Renderer/RenderCommand.cpp +++ /dev/null @@ -1,7 +0,0 @@ -#include "sspch.h" -#include "StarStudio/Renderer/RenderCommand.h" - -namespace StarStudio -{ - Scope RenderCommand::s_RendererAPI = RendererAPI::Create(); -} \ No newline at end of file diff --git a/StarStudio/src/sspch.cpp b/StarStudio/src/sspch.cpp deleted file mode 100644 index 4819e1f4..00000000 --- a/StarStudio/src/sspch.cpp +++ /dev/null @@ -1 +0,0 @@ -#include "sspch.h" \ No newline at end of file diff --git a/StarStudio/vendor/GLFW b/StarStudio/vendor/GLFW deleted file mode 160000 index 8729dd89..00000000 --- a/StarStudio/vendor/GLFW +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 8729dd89d4944c6f24942fda7788d051b950762a diff --git a/StarStudio/vendor/glm b/StarStudio/vendor/glm deleted file mode 160000 index 69b130c1..00000000 --- a/StarStudio/vendor/glm +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 69b130c162e6266e07392741bd04feacc55dcda2 diff --git a/StarStudio/vendor/imgui b/StarStudio/vendor/imgui deleted file mode 160000 index 0ca274b4..00000000 --- a/StarStudio/vendor/imgui +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 0ca274b469f9c35aec9ab16502b35b95ca7dd848 diff --git a/StarStudio/vendor/spdlog b/StarStudio/vendor/spdlog deleted file mode 160000 index 7cbf2a69..00000000 --- a/StarStudio/vendor/spdlog +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 7cbf2a696764f3c2c84ff4b8eb592fce5924919e diff --git a/premake5.lua b/premake5.lua index 40f77533..63a9a87f 100644 --- a/premake5.lua +++ b/premake5.lua @@ -1,4 +1,4 @@ -workspace "StarStudio" +workspace "StarEngine" architecture "x86_64" startproject "Sandbox" @@ -17,21 +17,21 @@ workspace "StarStudio" outputdir = "%{cfg.buildcfg}-%{cfg.system}-%{cfg.architecture}" IncludeDir = {} -IncludeDir["GLFW"] = "StarStudio/vendor/GLFW/include" -IncludeDir["GLAD"] = "StarStudio/vendor/GLAD/include" -IncludeDir["imgui"] = "StarStudio/vendor/imgui" -IncludeDir["glm"] = "StarStudio/vendor/glm" -IncludeDir["stb_image"] = "StarStudio/vendor/stb_image" +IncludeDir["GLFW"] = "StarEngine/vendor/GLFW/include" +IncludeDir["GLAD"] = "StarEngine/vendor/GLAD/include" +IncludeDir["imgui"] = "StarEngine/vendor/imgui" +IncludeDir["glm"] = "StarEngine/vendor/glm" +IncludeDir["stb_image"] = "StarEngine/vendor/stb_image" group "Dependencies" - include "StarStudio/vendor/GLFW" - include "StarStudio/vendor/GLAD" - include "StarStudio/vendor/imgui" + include "StarEngine/vendor/GLFW" + include "StarEngine/vendor/GLAD" + include "StarEngine/vendor/imgui" group "" -project "StarStudio" - location "StarStudio" +project "StarEngine" + location "StarEngine" kind "StaticLib" language "C++" cppdialect "C++17" @@ -40,8 +40,8 @@ project "StarStudio" targetdir ("bin/" .. outputdir .. "/%{prj.name}") objdir ("bin-int/" .. outputdir .. "/%{prj.name}") - pchheader "sspch.h" - pchsource "StarStudio/src/sspch.cpp" + pchheader "sepch.h" + pchsource "StarEngine/src/sepch.cpp" files { @@ -90,17 +90,17 @@ project "StarStudio" } filter "configurations:Debug" - defines "SS_DEBUG" + defines "SE_DEBUG" runtime "Debug" symbols "on" filter "configurations:Release" - defines "SS_RELEASE" + defines "SE_RELEASE" runtime "Release" optimize "on" filter "configurations:Dist" - defines "SS_DIST" + defines "SE_DIST" runtime "Release" optimize "on" @@ -125,29 +125,29 @@ project "Sandbox" includedirs { - "StarStudio/vendor/spdlog/include", - "StarStudio/src", - "StarStudio/vendor", + "StarEngine/vendor/spdlog/include", + "StarEngine/src", + "StarEngine/vendor", "%{IncludeDir.glm}" } links { - "StarStudio" + "StarEngine" } filter "configurations:Debug" - defines "SS_DEBUG" + defines "SE_DEBUG" runtime "Debug" symbols "on" filter "configurations:Release" - defines "SS_RELEASE" + defines "SE_RELEASE" runtime "Release" optimize "on" filter "configurations:Dist" - defines "SS_DIST" + defines "SE_DIST" runtime "Release" optimize "on"