|
KarmaEngine
Game Engine for practical learning and research purposes
|
OpenGL's vertex array class. More...
#include <OpenGLVertexArray.h>


Public Member Functions | |
| OpenGLVertexArray () | |
| A constructor. | |
| virtual | ~OpenGLVertexArray () |
| Destructor to delete resources and clenup. | |
| virtual void | Bind () const override |
| Binds the vertex array object. | |
| virtual void | UnBind () const override |
| Unbinds the array. | |
| virtual void | AddVertexBuffer (const std::shared_ptr< VertexBuffer > &vertexBuffer) override |
| virtual void | SetIndexBuffer (const std::shared_ptr< IndexBuffer > &indexBuffer) override |
| virtual void | SetShader (std::shared_ptr< Shader > shader) override |
| virtual void | SetMesh (std::shared_ptr< Mesh > mesh) override |
| Using OpenGL's API, the vertex buffer is processed for rendering. | |
| virtual void | SetMaterial (std::shared_ptr< Material > material) override |
| Sets the material cache for OpenGL's rendering. | |
| virtual const std::vector< std::shared_ptr< VertexBuffer > > & | GetVertexBuffers () const override |
| Getter for vertex buffer. | |
| virtual const IndexBuffer * | GetIndexBuffer () const override |
| Getter for index buffer. | |
| virtual std::shared_ptr< Material > | GetMaterial () const override |
| Getter for Material. | |
| virtual void | UpdateProcessAndSetReadyForSubmission () const override |
| OpenGL's way of processing Mesh + Material before submitting to GPU (or issuing draw call via RenderCommand::DrawIndexed) | |
Public Member Functions inherited from Karma::VertexArray | |
| virtual | ~VertexArray () |
| A destructor. | |
Additional Inherited Members | |
Static Public Member Functions inherited from Karma::VertexArray | |
| static VertexArray * | Create () |
| Create the VertexArray object based on the rendering API chosen by the programmer. | |
OpenGL's vertex array class.
| Karma::OpenGLVertexArray::OpenGLVertexArray | ( | ) |
A constructor.
Generates vertex array buffer and binds the array
|
virtual |
Destructor to delete resources and clenup.
|
overridevirtual |
Implements Karma::VertexArray.
|
overridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
overridevirtual |
Implements Karma::VertexArray.
|
overridevirtual |
|
overridevirtual |
Using OpenGL's API, the vertex buffer is processed for rendering.
| mesh | The container for vertex buffer loaded from .obj file |
Implements Karma::VertexArray.
|
inlineoverridevirtual |
Implements Karma::VertexArray.
|
overridevirtual |
|
overridevirtual |
OpenGL's way of processing Mesh + Material before submitting to GPU (or issuing draw call via RenderCommand::DrawIndexed)
Implements Karma::VertexArray.