aboutsummaryrefslogtreecommitdiff
path: root/src/Rendering/IndexBuffer.cpp
blob: 185684b7293889c2117d633f99ada5b760a1068f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "IndexBuffer.h"
#include "Renderer.h"

#include "Platform/OpenGL/OpenGLIndexBuffer.h"
#include "Platform/Vulkan/VulkanIndexBuffer.h"

namespace Donut 
{
    IndexBuffer* IndexBuffer::Create(const uint32_t* indices, uint32_t count) 
    {
        switch (Renderer::GetAPI()) 
        {
            case RendererAPI::API::OpenGL:
                return new OpenGLIndexBuffer(indices, count);
            case RendererAPI::API::Vulkan:
                return new VulkanIndexBuffer((uint32_t*)indices, count);
            default:
                return nullptr;
        }
    }
};