hachem.wtf
aboutsummaryrefslogtreecommitdiff
path: root/src/platform
diff options
context:
space:
mode:
Diffstat (limited to 'src/platform')
-rw-r--r--src/platform/opengl/opengl_renderer_api.cpp8
-rw-r--r--src/platform/opengl/opengl_renderer_api.h6
-rw-r--r--src/platform/opengl/opengl_shader.cpp2
-rw-r--r--src/platform/opengl/opengl_shader.h1
-rw-r--r--src/platform/opengl/opengl_texture.cpp5
-rw-r--r--src/platform/opengl/opengl_texture.h2
-rw-r--r--src/platform/opengl/opengl_vertex_array.cpp5
-rw-r--r--src/platform/opengl/opengl_vertex_array.h15
-rw-r--r--src/platform/vulkan/vulkan_renderer_api.cpp2
-rw-r--r--src/platform/vulkan/vulkan_renderer_api.h3
-rw-r--r--src/platform/vulkan/vulkan_vertex_array.cpp4
-rw-r--r--src/platform/vulkan/vulkan_vertex_array.h13
12 files changed, 39 insertions, 27 deletions
diff --git a/src/platform/opengl/opengl_renderer_api.cpp b/src/platform/opengl/opengl_renderer_api.cpp
index 1d41735..4542231 100644
--- a/src/platform/opengl/opengl_renderer_api.cpp
+++ b/src/platform/opengl/opengl_renderer_api.cpp
@@ -1,7 +1,7 @@
#include "opengl_renderer_api.h"
+
#include <glad/glad.h>
#include <GLFW/glfw3.h>
-#include <iostream>
namespace Donut
{
@@ -9,13 +9,13 @@ namespace Donut
{
if (!glfwGetCurrentContext())
{
- std::cout << "No OpenGL context is current! Cannot initialize GLAD." << std::endl;
+ DONUT_ERROR("No OpenGL context is current! Cannot initialize GLAD.");
return;
}
if (!gladLoadGLLoader((GLADloadproc)glfwGetProcAddress))
{
- std::cout << "Failed to initialize GLAD!" << std::endl;
+ DONUT_ERROR("Failed to initialize GLAD!");
return;
}
@@ -61,7 +61,7 @@ namespace Donut
glDisable(GL_CULL_FACE);
}
- void OpenGLRendererAPI::draw_indexed(const std::shared_ptr<VertexArray>& vertex_array, uint32_t index_count)
+ void OpenGLRendererAPI::draw_indexed(const Ref<VertexArray>& vertex_array, uint32_t index_count)
{
uint32_t count = index_count ? index_count : vertex_array->get_index_buffer()->get_count();
glDrawElements(GL_TRIANGLES, count, GL_UNSIGNED_INT, nullptr);
diff --git a/src/platform/opengl/opengl_renderer_api.h b/src/platform/opengl/opengl_renderer_api.h
index 15984d5..25accbb 100644
--- a/src/platform/opengl/opengl_renderer_api.h
+++ b/src/platform/opengl/opengl_renderer_api.h
@@ -1,6 +1,10 @@
#pragma once
+#include "core/memory.h"
+#include "core/log.h"
+
#include "rendering/renderer.h"
+
#include <glad/glad.h>
namespace Donut
@@ -17,7 +21,7 @@ namespace Donut
virtual void enable_depth_test() override;
virtual void set_face_culling(bool enabled) override;
- virtual void draw_indexed(const std::shared_ptr<VertexArray>& vertex_array,
+ virtual void draw_indexed(const Ref<VertexArray>& vertex_array,
uint32_t index_count = 0) override;
};
};
diff --git a/src/platform/opengl/opengl_shader.cpp b/src/platform/opengl/opengl_shader.cpp
index f4b99bc..3b0108e 100644
--- a/src/platform/opengl/opengl_shader.cpp
+++ b/src/platform/opengl/opengl_shader.cpp
@@ -1,6 +1,8 @@
#include "opengl_shader.h"
+
#include <glad/glad.h>
#include <glm/gtc/type_ptr.hpp>
+
#include <fstream>
#include <iostream>
diff --git a/src/platform/opengl/opengl_shader.h b/src/platform/opengl/opengl_shader.h
index 5870bda..6b1ceec 100644
--- a/src/platform/opengl/opengl_shader.h
+++ b/src/platform/opengl/opengl_shader.h
@@ -1,6 +1,7 @@
#pragma once
#include "rendering/shader.h"
+
#include <unordered_map>
#include <glm/glm.hpp>
diff --git a/src/platform/opengl/opengl_texture.cpp b/src/platform/opengl/opengl_texture.cpp
index 53ed06c..5d05fb4 100644
--- a/src/platform/opengl/opengl_texture.cpp
+++ b/src/platform/opengl/opengl_texture.cpp
@@ -1,5 +1,4 @@
#include "opengl_texture.h"
-#include <iostream>
namespace Donut
{
@@ -39,7 +38,7 @@ namespace Donut
uint32_t white_pixel = 0xFFFFFFFF;
glTextureSubImage2D(m_renderer_id, 0, 0, 0, m_width, m_height, m_data_format, GL_UNSIGNED_BYTE, &white_pixel);
- std::cout << "Created default texture (stb_image not available for loading: " << path << ")" << std::endl;
+ DONUT_INFO("Created default texture (stb_image not available for loading: ", path, ")");
}
OpenGLTexture2D::~OpenGLTexture2D()
@@ -52,7 +51,7 @@ namespace Donut
uint32_t bpp = m_data_format == GL_RGBA ? 4 : 3;
if (size != m_width * m_height * bpp)
{
- std::cout << "Data must be entire texture!" << std::endl;
+ DONUT_ERROR("Data must be entire texture!");
return;
}
diff --git a/src/platform/opengl/opengl_texture.h b/src/platform/opengl/opengl_texture.h
index 41b352a..705d770 100644
--- a/src/platform/opengl/opengl_texture.h
+++ b/src/platform/opengl/opengl_texture.h
@@ -1,6 +1,8 @@
#pragma once
#include "rendering/texture.h"
+#include "core/log.h"
+
#include <glad/glad.h>
namespace Donut
diff --git a/src/platform/opengl/opengl_vertex_array.cpp b/src/platform/opengl/opengl_vertex_array.cpp
index c57479b..e2fb766 100644
--- a/src/platform/opengl/opengl_vertex_array.cpp
+++ b/src/platform/opengl/opengl_vertex_array.cpp
@@ -1,4 +1,5 @@
#include <glad/glad.h>
+
#include "opengl_vertex_array.h"
#include "rendering/vertex_buffer.h"
#include "rendering/index_buffer.h"
@@ -25,7 +26,7 @@ namespace Donut
glBindVertexArray(0);
}
- void OpenGLVertexArray::add_vertex_buffer(const std::shared_ptr<VertexBuffer>& vertex_buffer)
+ void OpenGLVertexArray::add_vertex_buffer(const Ref<VertexBuffer>& vertex_buffer)
{
glBindVertexArray(m_renderer_id);
vertex_buffer->bind();
@@ -46,7 +47,7 @@ namespace Donut
m_vertex_buffers.push_back(vertex_buffer);
}
- void OpenGLVertexArray::set_index_buffer(const std::shared_ptr<IndexBuffer>& index_buffer)
+ void OpenGLVertexArray::set_index_buffer(const Ref<IndexBuffer>& index_buffer)
{
glBindVertexArray(m_renderer_id);
index_buffer->bind();
diff --git a/src/platform/opengl/opengl_vertex_array.h b/src/platform/opengl/opengl_vertex_array.h
index d6986db..ff5cdd8 100644
--- a/src/platform/opengl/opengl_vertex_array.h
+++ b/src/platform/opengl/opengl_vertex_array.h
@@ -1,11 +1,12 @@
#pragma once
+#include "core/memory.h"
+
#include "rendering/vertex_array.h"
#include "rendering/vertex_buffer.h"
#include "rendering/index_buffer.h"
#include <vector>
-#include <memory>
namespace Donut
{
@@ -19,22 +20,22 @@ namespace Donut
virtual void bind() const override;
virtual void unbind() const override;
- virtual void add_vertex_buffer(const std::shared_ptr<VertexBuffer>& vertex_buffer) override;
- virtual void set_index_buffer(const std::shared_ptr<IndexBuffer>& index_buffer) override;
+ virtual void add_vertex_buffer(const Ref<VertexBuffer>& vertex_buffer) override;
+ virtual void set_index_buffer(const Ref<IndexBuffer>& index_buffer) override;
- virtual const std::vector<std::shared_ptr<VertexBuffer>>& get_vertex_buffers() const override
+ virtual const std::vector<Ref<VertexBuffer>>& get_vertex_buffers() const override
{
return m_vertex_buffers;
}
- virtual const std::shared_ptr<IndexBuffer>& get_index_buffer() const override
+ virtual const Ref<IndexBuffer>& get_index_buffer() const override
{
return m_index_buffer;
}
private:
uint32_t m_renderer_id;
uint32_t m_vertex_buffer_index = 0;
- std::vector<std::shared_ptr<VertexBuffer>> m_vertex_buffers;
- std::shared_ptr<IndexBuffer> m_index_buffer;
+ std::vector<Ref<VertexBuffer>> m_vertex_buffers;
+ Ref<IndexBuffer> m_index_buffer;
};
};
diff --git a/src/platform/vulkan/vulkan_renderer_api.cpp b/src/platform/vulkan/vulkan_renderer_api.cpp
index b934317..f91a0ea 100644
--- a/src/platform/vulkan/vulkan_renderer_api.cpp
+++ b/src/platform/vulkan/vulkan_renderer_api.cpp
@@ -26,7 +26,7 @@ namespace Donut
{
}
- void VulkanRendererAPI::draw_indexed(const std::shared_ptr<VertexArray>& vertex_array, uint32_t index_count)
+ void VulkanRendererAPI::draw_indexed(const Ref<VertexArray>& vertex_array, uint32_t index_count)
{
}
};
diff --git a/src/platform/vulkan/vulkan_renderer_api.h b/src/platform/vulkan/vulkan_renderer_api.h
index 0e1baf9..d1394b3 100644
--- a/src/platform/vulkan/vulkan_renderer_api.h
+++ b/src/platform/vulkan/vulkan_renderer_api.h
@@ -1,5 +1,6 @@
#pragma once
+#include "core/memory.h"
#include "rendering/renderer.h"
namespace Donut
@@ -16,7 +17,7 @@ namespace Donut
virtual void enable_depth_test() override;
virtual void set_face_culling(bool enabled) override;
- virtual void draw_indexed(const std::shared_ptr<VertexArray>& vertex_array,
+ virtual void draw_indexed(const Ref<VertexArray>& vertex_array,
uint32_t index_count = 0) override;
};
};
diff --git a/src/platform/vulkan/vulkan_vertex_array.cpp b/src/platform/vulkan/vulkan_vertex_array.cpp
index 31c2f74..8258696 100644
--- a/src/platform/vulkan/vulkan_vertex_array.cpp
+++ b/src/platform/vulkan/vulkan_vertex_array.cpp
@@ -18,12 +18,12 @@ namespace Donut
{
}
- void VulkanVertexArray::add_vertex_buffer(const std::shared_ptr<VertexBuffer>& vertex_buffer)
+ void VulkanVertexArray::add_vertex_buffer(const Ref<VertexBuffer>& vertex_buffer)
{
m_vertex_buffers.push_back(vertex_buffer);
}
- void VulkanVertexArray::set_index_buffer(const std::shared_ptr<IndexBuffer>& index_buffer)
+ void VulkanVertexArray::set_index_buffer(const Ref<IndexBuffer>& index_buffer)
{
m_index_buffer = index_buffer;
}
diff --git a/src/platform/vulkan/vulkan_vertex_array.h b/src/platform/vulkan/vulkan_vertex_array.h
index b36c421..f4356d9 100644
--- a/src/platform/vulkan/vulkan_vertex_array.h
+++ b/src/platform/vulkan/vulkan_vertex_array.h
@@ -1,6 +1,7 @@
#pragma once
#include "rendering/vertex_array.h"
+#include "core/memory.h"
namespace Donut
{
@@ -14,14 +15,14 @@ namespace Donut
virtual void bind() const override;
virtual void unbind() const override;
- virtual void add_vertex_buffer(const std::shared_ptr<VertexBuffer>& vertex_buffer) override;
- virtual void set_index_buffer(const std::shared_ptr<IndexBuffer>& index_buffer) override;
+ virtual void add_vertex_buffer(const Ref<VertexBuffer>& vertex_buffer) override;
+ virtual void set_index_buffer(const Ref<IndexBuffer>& index_buffer) override;
- virtual const std::vector<std::shared_ptr<VertexBuffer>>& get_vertex_buffers() const { return m_vertex_buffers; }
- virtual const std::shared_ptr<IndexBuffer>& get_index_buffer() const { return m_index_buffer; }
+ virtual const std::vector<Ref<VertexBuffer>>& get_vertex_buffers() const { return m_vertex_buffers; }
+ virtual const Ref<IndexBuffer>& get_index_buffer() const { return m_index_buffer; }
private:
uint32_t m_renderer_id;
- std::vector<std::shared_ptr<VertexBuffer>> m_vertex_buffers;
- std::shared_ptr<IndexBuffer> m_index_buffer;
+ std::vector<Ref<VertexBuffer>> m_vertex_buffers;
+ Ref<IndexBuffer> m_index_buffer;
};
};