Elevate Engine 1
Loading...
Searching...
No Matches
VertexArray.cpp
Go to the documentation of this file.
1#include "eepch.h"
2#include "VertexArray.h"
3
7
8namespace Elevate
9{
10 void VertexArray::AddVertexBuffer(const std::shared_ptr<VertexBuffer>& vertexBuffer)
11 {
12 if (vertexBuffer)
13 {
14 m_vertexBuffers.push_back(vertexBuffer);
15 }
16 }
17
18 void VertexArray::SetIndexBuffer(const std::shared_ptr<IndexBuffer>& indexBuffer)
19 {
20 if (indexBuffer)
21 {
22 m_indexBuffer = indexBuffer;
23 }
24 }
25
27 {
28 m_vertexBuffers.clear();
29 }
30
31 void VertexArray::SetSingleVertexBuffer(const std::shared_ptr<VertexBuffer>& vertexBuffer)
32 {
34 AddVertexBuffer(vertexBuffer);
35 }
36
38 {
39 switch (Renderer::GetAPI())
40 {
41 case RendererAPI::GraphicAPI::None: return nullptr; break;
43 }
44
45 EE_CORE_ASSERT(false, "A supported RendererAPI needs to be supported!");
46 return nullptr;
47 }
48}
static RendererAPI::GraphicAPI GetAPI()
Definition Renderer.h:24
virtual void AddVertexBuffer(const std::shared_ptr< VertexBuffer > &vertexBuffer)
virtual void SetIndexBuffer(const std::shared_ptr< IndexBuffer > &indexBuffer)
virtual void ClearVertexBuffers()
void SetSingleVertexBuffer(const std::shared_ptr< VertexBuffer > &vertexBuffer)
static VertexArray * Create()