Files
dx12-starter/include/renderer.h
2024-04-10 23:35:05 +02:00

33 lines
497 B
C++

#pragma once
#include <memory>
namespace dx12_starter
{
struct APIVersion
{
uint32_t major;
uint32_t minor;
};
struct RendererCreateParams
{
void* nativeWindowHandle;
APIVersion minimumVersion;
uint32_t frameCount;
};
class IRenderer
{
public:
virtual ~IRenderer() = default;
virtual void RecordCommands() = 0;
virtual void Render() = 0;
virtual void Destroy() = 0;
static std::unique_ptr<IRenderer> Create(const RendererCreateParams& params);
};
} // namespace dx12_starter