|
Vesper 0.5.1
Vesper is short form for the Latin word for "Bat", as Vesper is designed to be small, lightweight, and easily handle things like particles and flocking behaviors in accordance with the nature of bats. \n It is meant to be a particle simulation, VFX editor, and CAN be used secondarily as a small game engine. GitHub | Vesper Updates | Creator |
An abstract class defining the interface for a rendering API. More...
#include <RendererAPI.h>
Public Types | |
| enum class | API { None = 0 , OpenGL = 1 } |
| API. More... | |
Public Member Functions | |
| virtual | ~RendererAPI ()=default |
| virtual void | Init ()=0 |
| Initializes the rendering API. | |
| virtual void | SetViewport (uint32_t x, uint32_t y, uint32_t width, uint32_t height)=0 |
| Sets the viewport dimensions. | |
| virtual void | SetClearColor (const glm::vec4 &color)=0 |
| Sets the clear color for the rendering API. | |
| virtual void | Clear ()=0 |
| Clears the rendering buffers. | |
| virtual void | DrawIndexed (const Ref< VertexArray > &vertexArray, uint32_t indexCount=0)=0 |
| Draws indexed geometry using the provided vertex array. | |
Static Public Member Functions | |
| static API | GetAPI () |
| Returns the current rendering API. | |
Static Private Attributes | |
| static API | s_API = RendererAPI::API::OpenGL |
An abstract class defining the interface for a rendering API.
|
strong |
API.
| Enumerator | |
|---|---|
| None | |
| OpenGL | |
|
virtualdefault |
|
pure virtual |
Clears the rendering buffers.
Implemented in Vesper::OpenGLRendererAPI.
Referenced by Vesper::RenderCommand::Clear().
|
pure virtual |
Draws indexed geometry using the provided vertex array.
Implemented in Vesper::OpenGLRendererAPI.
|
inlinestatic |
|
pure virtual |
Initializes the rendering API.
Implemented in Vesper::OpenGLRendererAPI.
Referenced by Vesper::RenderCommand::Init().
|
pure virtual |
Sets the clear color for the rendering API.
Implemented in Vesper::OpenGLRendererAPI.
|
pure virtual |
Sets the viewport dimensions.
Implemented in Vesper::OpenGLRendererAPI.
Referenced by Vesper::RenderCommand::SetViewport().
|
staticprivate |
Referenced by GetAPI().