81 virtual void DrawIndexed(std::shared_ptr<VertexArray> vertexArray) = 0;
109 static glm::vec4 m_ClearColor;
#define KARMA_API
Defining Karma's API macro for storage class information.
Definition Core.h:41
This file contains the VertexArray class.
An abstract class for a renderer.
Definition RendererAPI.h:23
static API GetAPI()
Getter for rendering api being used.
Definition RendererAPI.h:102
virtual void Clear()=0
Clear the rendering screen.
glm::vec4 & GetClearColor() const
Getter for m_ClearColor variable.
Definition RendererAPI.h:95
API
The rendering API used by the Engine.
Definition RendererAPI.h:29
@ Vulkan
Vulkan (https://www.vulkan.org)
Definition RendererAPI.h:42
@ None
No rendering.
Definition RendererAPI.h:34
@ OpenGL
OpenGL (https://www.opengl.org)
Definition RendererAPI.h:38
virtual void DrawIndexed(std::shared_ptr< VertexArray > vertexArray)=0
Routine for drawing primitives.
virtual void EndScene()=0
Instructions for end of the scene.
virtual ~RendererAPI()
A destructor.
Definition RendererAPI.h:51
virtual void BeginScene()=0
Setting up resources for rendering of a scene.
virtual void SetClearColor(const glm::vec4 &color)=0
Set the color to be used for clear (rendering) screen.