26 lines
1.1 KiB
C
26 lines
1.1 KiB
C
#pragma once
|
|
#include "gryphn/gryphn_utils.h"
|
|
|
|
enum gnRenderingAPI {
|
|
GN_RENDERINGAPI_NONE, // idk why im putting this
|
|
GN_RENDERINGAPI_SOFTWARE, // i kinda wanna write a software renderer
|
|
|
|
GN_RENDERINGAPI_OPENGL,
|
|
GN_RENDERINGAPI_VULKAN,
|
|
GN_RENDERINGAPI_DIRECTX11, GN_RENDERINGAPI_DIRECTX12,
|
|
GN_RENDERINGAPI_METAL
|
|
};
|
|
|
|
inline gnString gnRenderingAPIName(gnRenderingAPI api) {
|
|
switch (api) {
|
|
case GN_RENDERINGAPI_NONE: return gnCreateString("GN_RENDERINGAPI_NONE");
|
|
case GN_RENDERINGAPI_SOFTWARE: return gnCreateString("GN_RENDERINGAPI_SOFTWARE");
|
|
case GN_RENDERINGAPI_OPENGL: return gnCreateString("GN_RENDERINGAPI_OPENGL");
|
|
case GN_RENDERINGAPI_VULKAN: return gnCreateString("GN_RENDERINGAPI_VULKAN");
|
|
case GN_RENDERINGAPI_DIRECTX11: return gnCreateString("GN_RENDERINGAPI_DIRECTX11");
|
|
case GN_RENDERINGAPI_DIRECTX12: return gnCreateString("GN_RENDERINGAPI_DIRECTX12");
|
|
case GN_RENDERINGAPI_METAL: return gnCreateString("GN_RENDERINGAPI_METAL");
|
|
}
|
|
return gnCreateString("GN_INVALID_API");
|
|
}
|