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

#include "Platform/OpenGL/OpenGLVertexBuffer.h"
#include "Platform/Vulkan/VulkanVertexBuffer.h"

namespace Donut
{
    Ref<VertexBuffer> VertexBuffer::Create(const void* data, uint32_t size)
    {
        switch (Renderer::GetAPI()) 
        {
            case RendererAPI::API::OpenGL:
                return CreateRef<OpenGLVertexBuffer>(data, size);
            case RendererAPI::API::Vulkan:
                return CreateRef<VulkanVertexBuffer>((float*)data, size);
            default:
                return nullptr;
        }
    }
};