various little fixes
This commit is contained in:
@@ -21,6 +21,7 @@ namespace OpenEngine {
|
||||
|
||||
virtual void Resize(uint32_t width, uint32_t height) override;
|
||||
virtual int ReadPixel(uint32_t index, int x, int y) override;
|
||||
virtual void ClearBufferI(int index, int value) override;
|
||||
|
||||
virtual uint32_t GetColorAttachmentRendererID(uint32_t index = 0) const override {
|
||||
OE_CORE_ASSERT(index < color_attachment_ids.size(), "Index is greater than color attachment count.");
|
||||
|
||||
@@ -13,7 +13,6 @@ namespace OpenEngine {
|
||||
virtual void SetViewport(uint32_t x, uint32_t y, uint32_t width, uint32_t height) override;
|
||||
|
||||
virtual void SetClearColor(const glm::vec4& color) override;
|
||||
virtual void ClearBufferI(int buffer, int value) override;
|
||||
virtual void Clear() override;
|
||||
|
||||
virtual void DrawIndexed(const Ref<VertexArray>& vertex_array, uint32_t index_count = 0) override;
|
||||
|
||||
@@ -62,6 +62,7 @@ namespace OpenEngine {
|
||||
|
||||
virtual void Resize(uint32_t width, uint32_t height) = 0;
|
||||
virtual int ReadPixel(uint32_t index, int x, int y) = 0;
|
||||
virtual void ClearBufferI(int index, int value) = 0;
|
||||
|
||||
virtual uint32_t GetColorAttachmentRendererID(uint32_t index = 0) const = 0;
|
||||
|
||||
|
||||
@@ -24,11 +24,6 @@ namespace OpenEngine {
|
||||
api->SetClearColor(color);
|
||||
};
|
||||
|
||||
inline static void ClearBufferI(int buffer, int value)
|
||||
{
|
||||
api->ClearBufferI(buffer, value);
|
||||
};
|
||||
|
||||
inline static void Clear()
|
||||
{
|
||||
api->Clear();
|
||||
|
||||
@@ -21,7 +21,6 @@ namespace OpenEngine {
|
||||
virtual void SetViewport(uint32_t x, uint32_t y, uint32_t width, uint32_t height) = 0;
|
||||
|
||||
virtual void SetClearColor(const glm::vec4& color) = 0;
|
||||
virtual void ClearBufferI(int buffer, int value) = 0;
|
||||
virtual void Clear() = 0;
|
||||
|
||||
virtual void DrawIndexed(const Ref<VertexArray>& vertex_array, uint32_t count = 0) = 0;
|
||||
|
||||
@@ -201,4 +201,8 @@ namespace OpenEngine {
|
||||
|
||||
return pixel_data;
|
||||
}
|
||||
void OpenGLFramebuffer::ClearBufferI(int index, int value)
|
||||
{
|
||||
glClearTexImage(color_attachment_ids[index], 0, GL_RED_INTEGER, GL_INT, &value);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -57,11 +57,6 @@ namespace OpenEngine {
|
||||
glClearColor(color.r, color.g, color.b, color.a);
|
||||
}
|
||||
|
||||
void OpenGLRendererAPI::ClearBufferI(int buffer, int value)
|
||||
{
|
||||
glClearBufferiv(GL_COLOR, buffer, &value);
|
||||
}
|
||||
|
||||
void OpenGLRendererAPI::Clear()
|
||||
{
|
||||
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
||||
|
||||
Reference in New Issue
Block a user