Grindstone Game Engine v0.2.0
An open source game engine and toolkit.
Loading...
Searching...
No Matches
Grindstone::GraphicsAPI Namespace Reference

Classes

struct  BlendData
class  Buffer
struct  BufferBarrier
struct  BufferCopyRegion
struct  ClearAttachment
union  ClearColor
struct  ClearDepthStencil
struct  ClearRect
union  ClearUnion
class  CommandBuffer
class  ComputePipeline
class  Core
class  DescriptorSet
class  DescriptorSetLayout
class  DirectX12CommandBuffer
class  DirectX12DepthStencilTarget
class  DirectX12Descriptor
class  DirectX12DescriptorLayout
class  DirectX12Framebuffer
class  DirectX12GraphicsPipeline
class  DirectX12GraphicsWrapper
class  DirectX12IndexBuffer
class  DirectX12RenderPass
class  DirectX12RenderTarget
class  DirectX12Texture
class  DirectX12TextureBinding
class  DirectX12TextureBindingLayout
class  DirectX12UniformBuffer
class  DirectX12UniformBufferBinding
class  DirectX12VertexBuffer
class  Framebuffer
class  GraphicsPipeline
class  Image
struct  ImageBarrier
struct  OpenGLFormats
class  PipelineLayout
struct  RenderAttachment
class  RenderPass
class  Sampler
struct  SamplerOptions
class  VertexArrayObject
struct  VertexAttributeDescription
struct  VertexBindingDescription
struct  VertexInputLayout
struct  VertexInputLayoutBuilder
class  WindowGraphicsBinding

Enumerations

enum class  BufferUsage : uint8_t {
  Vertex = 1 , Index = 1 << 1 , Uniform = 1 << 2 , Storage = 1 << 3 ,
  Indirect = 1 << 4 , TransferSrc = 1 << 5 , TransferDst = 1 << 6
}
enum class  AccessFlags : uint32_t {
  None = 0 , IndirectCommandRead = 0x00000001 , IndexRead = 0x00000002 , VertexAttributeRead = 0x00000004 ,
  UniformRead = 0x00000008 , InputAttachmentRead = 0x00000010 , ShaderRead = 0x00000020 , ShaderWrite = 0x00000040 ,
  ColorAttachmentRead = 0x00000080 , ColorAttachmentWrite = 0x00000100 , DepthStencilAttachmentRead = 0x00000200 , DepthStencilAttachmentWrite = 0x00000400 ,
  TransferRead = 0x00000800 , TransferWrite = 0x00001000 , HostRead = 0x00002000 , HostWrite = 0x00004000 ,
  MemoryRead = 0x00008000 , MemoryWrite = 0x00010000 , TransformFeedbackWrite = 0x02000000 , TransformFeedbackCounterRead = 0x04000000 ,
  TransformFeedbackCounterWrite = 0x08000000 , ConditionalRenderingRead = 0x00100000 , ColorAttachmentReadNoncoherent = 0x00080000 , AccelerationStructureRead = 0x00200000 ,
  AccelerationStructureWrite = 0x00400000 , FragmentDensityMapRead = 0x01000000 , FragmentShadingRateAttachmentRead = 0x00800000 , CommandPreprocessRead = 0x00020000 ,
  CommandPreprocessWrite = 0x00040000
}
enum class  API { OpenGL = 0 , Vulkan , DirectX11 , DirectX12 }
enum class  VendorType {
  Unset , Unknown , AMD , Imagination ,
  Nvidia , Arm , Qualcomm , Intel
}
enum class  LoadOp { Load = 0 , Clear , DontCare }
enum class  StoreOp { Store = 0 , DontCare }
enum class  TextureWrapMode : uint8_t {
  Repeat = 0 , ClampToEdge , ClampToBorder , MirroredRepeat ,
  MirroredClampToEdge
}
enum class  TextureFilter : uint8_t { Nearest = 0 , Linear }
enum class  ClearMode : uint8_t {
  Color = 1 << 0 , Depth = 1 << 1 , Stencil = 1 << 2 , ColorAndDepth = Color | Depth ,
  All = ColorAndDepth | Stencil
}
enum class  ImageLayout : uint8_t {
  Undefined , General , ColorAttachment , DepthWrite ,
  DepthRead , ShaderRead , TransferSrc , TransferDst ,
  Present
}
enum class  MemoryUsage {
  GPUOnly , CPUToGPU , GPUToCPU , CPUOnly ,
  Transient
}
enum class  ImageDimension { Invalid , Dimension1D , Dimension2D , Dimension3D }
enum class  ImageAspectBits : uint16_t {
  None = 0 , Color = 0x00000001 , Depth = 0x00000002 , Stencil = 0x00000004 ,
  Metadata = 0x00000008 , Plane0 = 0x00000010 , Plane1 = 0x00000020 , Plane2 = 0x00000040 ,
  MemoryPlane0 = 0x00000080 , MemoryPlane1 = 0x00000100 , MemoryPlane2 = 0x00000200 , MemoryPlane3 = 0x00000400
}
enum class  PipelineStageBit : uint32_t {
  None = 0 , TopOfPipe = 0x00000001 , DrawIndirect = 0x00000002 , VertexInput = 0x00000004 ,
  VertexShader = 0x00000008 , TesslationControlShader = 0x00000010 , TesselationEvaluationShader = 0x00000020 , GeometryShader = 0x00000040 ,
  FragmentShader = 0x00000080 , EarlyFragmentTests = 0x00000100 , LateFragmentTests = 0x00000200 , ColorAttachmentOutput = 0x00000400 ,
  ComputeShader = 0x00000800 , Transfer = 0x00001000 , BottomOfPipe = 0x00002000 , Host = 0x00004000 ,
  AllGraphics = 0x00008000 , AllCommands = 0x00010000 , TransformFeedback = 0x01000000 , ConditionalRendering = 0x00040000 ,
  AccelerationStructureBuild = 0x02000000 , RayTracingShader = 0x00200000 , FragmentDensityProcess = 0x00800000 , FragmentShaderRateAttachment = 0x00400000 ,
  CommandPreprocess = 0x00020000 , TaskShader = 0x00080000 , MeshShader = 0x00100000
}
enum class  Format {
  Invalid , R4G4_UNORM_PACK8 , R4G4B4A4_UNORM_PACK16 , B4G4R4A4_UNORM_PACK16 ,
  R5G6B5_UNORM_PACK16 , B5G6R5_UNORM_PACK16 , R5G5B5A1_UNORM_PACK16 , B5G5R5A1_UNORM_PACK16 ,
  A1R5G5B5_UNORM_PACK16 , R8_UNORM , R8_SNORM , R8_USCALED ,
  R8_SSCALED , R8_UINT , R8_SINT , R8_SRGB ,
  R8G8_UNORM , R8G8_SNORM , R8G8_USCALED , R8G8_SSCALED ,
  R8G8_UINT , R8G8_SINT , R8G8_SRGB , R8G8B8_UNORM ,
  R8G8B8_SNORM , R8G8B8_USCALED , R8G8B8_SSCALED , R8G8B8_UINT ,
  R8G8B8_SINT , R8G8B8_SRGB , B8G8R8_UNORM , B8G8R8_SNORM ,
  B8G8R8_USCALED , B8G8R8_SSCALED , B8G8R8_UINT , B8G8R8_SINT ,
  B8G8R8_SRGB , R8G8B8A8_UNORM , R8G8B8A8_SNORM , R8G8B8A8_USCALED ,
  R8G8B8A8_SSCALED , R8G8B8A8_UINT , R8G8B8A8_SINT , R8G8B8A8_SRGB ,
  B8G8R8A8_UNORM , B8G8R8A8_SNORM , B8G8R8A8_USCALED , B8G8R8A8_SSCALED ,
  B8G8R8A8_UINT , B8G8R8A8_SINT , B8G8R8A8_SRGB , A8B8G8R8_UNORM_PACK32 ,
  A8B8G8R8_SNORM_PACK32 , A8B8G8R8_USCALED_PACK32 , A8B8G8R8_SSCALED_PACK32 , A8B8G8R8_UINT_PACK32 ,
  A8B8G8R8_SINT_PACK32 , A8B8G8R8_SRGB_PACK32 , A2R10G10B10_UNORM_PACK32 , A2R10G10B10_SNORM_PACK32 ,
  A2R10G10B10_USCALED_PACK32 , A2R10G10B10_SSCALED_PACK32 , A2R10G10B10_UINT_PACK32 , A2R10G10B10_SINT_PACK32 ,
  A2B10G10R10_UNORM_PACK32 , A2B10G10R10_SNORM_PACK32 , A2B10G10R10_USCALED_PACK32 , A2B10G10R10_SSCALED_PACK32 ,
  A2B10G10R10_UINT_PACK32 , A2B10G10R10_SINT_PACK32 , R16_UNORM , R16_SNORM ,
  R16_USCALED , R16_SSCALED , R16_UINT , R16_SINT ,
  R16_SFLOAT , R16G16_UNORM , R16G16_SNORM , R16G16_USCALED ,
  R16G16_SSCALED , R16G16_UINT , R16G16_SINT , R16G16_SFLOAT ,
  R16G16B16_UNORM , R16G16B16_SNORM , R16G16B16_USCALED , R16G16B16_SSCALED ,
  R16G16B16_UINT , R16G16B16_SINT , R16G16B16_SFLOAT , R16G16B16A16_UNORM ,
  R16G16B16A16_SNORM , R16G16B16A16_USCALED , R16G16B16A16_SSCALED , R16G16B16A16_UINT ,
  R16G16B16A16_SINT , R16G16B16A16_SFLOAT , R32_UINT , R32_SINT ,
  R32_SFLOAT , R32G32_UINT , R32G32_SINT , R32G32_SFLOAT ,
  R32G32B32_UINT , R32G32B32_SINT , R32G32B32_SFLOAT , R32G32B32A32_UINT ,
  R32G32B32A32_SINT , R32G32B32A32_SFLOAT , R64_UINT , R64_SINT ,
  R64_SFLOAT , R64G64_UINT , R64G64_SINT , R64G64_SFLOAT ,
  R64G64B64_UINT , R64G64B64_SINT , R64G64B64_SFLOAT , R64G64B64A64_UINT ,
  R64G64B64A64_SINT , R64G64B64A64_SFLOAT , B10G11R11_UFLOAT_PACK32 , E5B9G9R9_UFLOAT_PACK32 ,
  D16_UNORM , X8_D24_UNORM_PACK32 , D32_SFLOAT , S8_UINT ,
  D16_UNORM_S8_UINT , D24_UNORM_S8_UINT , D32_SFLOAT_S8_UINT , BC1_RGB_UNORM_BLOCK ,
  BC1_RGB_SRGB_BLOCK , BC1_RGBA_UNORM_BLOCK , BC1_RGBA_SRGB_BLOCK , BC2_UNORM_BLOCK ,
  BC2_SRGB_BLOCK , BC3_UNORM_BLOCK , BC3_SRGB_BLOCK , BC4_UNORM_BLOCK ,
  BC4_SNORM_BLOCK , BC5_UNORM_BLOCK , BC5_SNORM_BLOCK , BC6H_UFLOAT_BLOCK ,
  BC6H_SFLOAT_BLOCK , BC7_UNORM_BLOCK , BC7_SRGB_BLOCK , ETC2_R8G8B8_UNORM_BLOCK ,
  ETC2_R8G8B8_SRGB_BLOCK , ETC2_R8G8B8A1_UNORM_BLOCK , ETC2_R8G8B8A1_SRGB_BLOCK , ETC2_R8G8B8A8_UNORM_BLOCK ,
  ETC2_R8G8B8A8_SRGB_BLOCK , EAC_R11_UNORM_BLOCK , EAC_R11_SNORM_BLOCK , EAC_R11G11_UNORM_BLOCK ,
  EAC_R11G11_SNORM_BLOCK , ASTC_4x4_UNORM_BLOCK , ASTC_4x4_SRGB_BLOCK , ASTC_5x4_UNORM_BLOCK ,
  ASTC_5x4_SRGB_BLOCK , ASTC_5x5_UNORM_BLOCK , ASTC_5x5_SRGB_BLOCK , ASTC_6x5_UNORM_BLOCK ,
  ASTC_6x5_SRGB_BLOCK , ASTC_6x6_UNORM_BLOCK , ASTC_6x6_SRGB_BLOCK , ASTC_8x5_UNORM_BLOCK ,
  ASTC_8x5_SRGB_BLOCK , ASTC_8x6_UNORM_BLOCK , ASTC_8x6_SRGB_BLOCK , ASTC_8x8_UNORM_BLOCK ,
  ASTC_8x8_SRGB_BLOCK , ASTC_10x5_UNORM_BLOCK , ASTC_10x5_SRGB_BLOCK , ASTC_10x6_UNORM_BLOCK ,
  ASTC_10x6_SRGB_BLOCK , ASTC_10x8_UNORM_BLOCK , ASTC_10x8_SRGB_BLOCK , ASTC_10x10_UNORM_BLOCK ,
  ASTC_10x10_SRGB_BLOCK , ASTC_12x10_UNORM_BLOCK , ASTC_12x10_SRGB_BLOCK , ASTC_12x12_UNORM_BLOCK ,
  ASTC_12x12_SRGB_BLOCK , G8B8G8R8_422_UNORM , B8G8R8G8_422_UNORM , G8_B8_R8_3PLANE_420_UNORM ,
  G8_B8R8_2PLANE_420_UNORM , G8_B8_R8_3PLANE_422_UNORM , G8_B8R8_2PLANE_422_UNORM , G8_B8_R8_3PLANE_444_UNORM ,
  R10X6_UNORM_PACK16 , R10X6G10X6_UNORM_2PACK16 , R10X6G10X6B10X6A10X6_UNORM_4PACK16 , G10X6B10X6G10X6R10X6_422_UNORM_4PACK16 ,
  B10X6G10X6R10X6G10X6_422_UNORM_4PACK16 , G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16 , G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16 , G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16 ,
  G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16 , G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16 , R12X4_UNORM_PACK16 , R12X4G12X4_UNORM_2PACK16 ,
  R12X4G12X4B12X4A12X4_UNORM_4PACK16 , G12X4B12X4G12X4R12X4_422_UNORM_4PACK16 , B12X4G12X4R12X4G12X4_422_UNORM_4PACK16 , G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16 ,
  G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16 , G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16 , G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16 , G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16 ,
  G16B16G16R16_422_UNORM , B16G16R16G16_422_UNORM , G16_B16_R16_3PLANE_420_UNORM , G16_B16R16_2PLANE_420_UNORM ,
  G16_B16_R16_3PLANE_422_UNORM , G16_B16R16_2PLANE_422_UNORM , G16_B16_R16_3PLANE_444_UNORM , G8_B8R8_2PLANE_444_UNORM ,
  G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16 , G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16 , G16_B16R16_2PLANE_444_UNORM , A4R4G4B4_UNORM_PACK16 ,
  A4B4G4R4_UNORM_PACK16 , ASTC_4x4_SFLOAT , ASTC_5x4_SFLOAT , ASTC_5x5_SFLOAT ,
  ASTC_6x5_SFLOAT , ASTC_6x6_SFLOAT , ASTC_8x5_SFLOAT , ASTC_8x6_SFLOAT ,
  ASTC_8x8_SFLOAT , ASTC_10x5_SFLOAT , ASTC_10x6_SFLOAT , ASTC_10x8_SFLOAT ,
  ASTC_10x10_SFLOAT , ASTC_12x10_SFLOAT , ASTC_12x12_SFLOAT , PVRTC1_2BPP_UNORM ,
  PVRTC1_4BPP_UNORM , PVRTC2_2BPP_UNORM , PVRTC2_4BPP_UNORM , PVRTC1_2BPP_SRGB ,
  PVRTC1_4BPP_SRGB , PVRTC2_2BPP_SRGB , PVRTC2_4BPP_SRGB , R16G16_S10_5 ,
  A1B5G5R5_UNORM_PACK16 , A8_UNORM
}
enum class  FormatDepthStencilType : uint8_t { NotDepthStencil = 0 , Depth = 1 << 0 , Stencil = 1 << 1 , DepthStencil = static_cast<uint8_t>(FormatDepthStencilType::Depth) | static_cast<uint8_t>(FormatDepthStencilType::Stencil) }
enum class  ShaderStage : uint8_t { SHADER_STAGE_TYPES , GraphicsCount = Compute , Count }
enum class  ShaderStageBit : uint8_t {
  None = 0 , SHADER_STAGE_TYPES , Count = 8 , AllGraphics = Vertex | TesselationEvaluation | TesselationControl | Geometry | Fragment | Task | Mesh ,
  All = AllGraphics | Compute
}
enum class  BindingType {
  None , Sampler , CombinedImageSampler , SampledImage ,
  StorageImage , UniformTexelBuffer , StorageTexelBuffer , UniformBuffer ,
  StorageBuffer , UniformBufferDynamic , StorageBufferDynamic , AccelerationStructure
}
enum class  BlendOperation : uint8_t { BLEND_OPERATIONS_LIST , Count }
enum class  BlendFactor : uint8_t { BLEND_FACTORS_LIST , Count }
enum class  GeometryType : uint8_t { GEOMETRY_TYPES_LIST , Count }
enum class  PolygonFillMode : uint8_t { Point , Line , Fill }
enum class  CompareOperation : uint8_t {
  Never , Less , Equal , LessOrEqual ,
  Greater , NotEqual , GreaterOrEqual , Always
}
enum class  ColorMask : uint8_t {
  None = 0 , Red = 0x1 , Green = 0x2 , Blue = 0x4 ,
  Alpha = 0x8 , RG = Red | Green , RB = Red | Blue , RA = Red | Alpha ,
  GB = Green | Blue , GA = Green | Alpha , BA = Blue | Alpha , RGB = Red | Green | Blue ,
  RGA = Red | Green | Alpha , RBA = Red | Blue | Alpha , GBA = Green | Blue | Alpha , RGBA = Red | Green | Blue | Alpha
}
enum class  CullMode : uint8_t { None = 0 , Front , Back , Both }
enum class  AttributeUsage {
  Position , Color , TexCoord0 , TexCoord1 ,
  TexCoord2 , TexCoord3 , Normal , Tangent ,
  BlendWeights , BlendIndices , Other
}
enum class  VertexInputRate { Vertex , Instance }
enum class  ImageUsageFlags : uint8_t {
  Sampled = 1 , RenderTarget = 1 << 1 , DepthStencil = 1 << 2 , Storage = 1 << 3 ,
  GenerateMipmaps = 1 << 4 , Cubemap = 1 << 5 , TransferSrc = 1 << 6 , TransferDst = 1 << 7 ,
  Count = 8
}

Functions

ImageAspectBits GetFormatAspect (Format format)
FormatDepthStencilType GetFormatDepthStencilType (Format format)
bool IsFormatCompressed (Format format)
uint8_t GetCompressedFormatBlockSize (Format format)
uint8_t GetFormatBytesPerPixel (Grindstone::GraphicsAPI::Format format)
const char * GetShaderStageName (Grindstone::GraphicsAPI::ShaderStage stage)
const char * GetBlendOperationName (Grindstone::GraphicsAPI::BlendOperation op)
const char * GetBlendFactorName (Grindstone::GraphicsAPI::BlendFactor factor)
const char * GetGeometryTypeName (Grindstone::GraphicsAPI::GeometryType stage)
const char * GetPolygonFillModeName (Grindstone::GraphicsAPI::PolygonFillMode mode)
const char * GetCompareOperationName (Grindstone::GraphicsAPI::CompareOperation op)
const char * GetColorMaskName (Grindstone::GraphicsAPI::ColorMask colorMask)
const char * GetCullModeName (Grindstone::GraphicsAPI::CullMode cullMode)
VkFilter TranslateFilterToDirectX12 (TextureFilter f)
VkSamplerAddressMode TranslateWrapToDirectX12 (TextureWrapMode m)
VkFormat TranslateVertexFormatsToDirectX12 (VertexFormat format)
ColorFormat TranslateColorFormatFromDirectX12 (VkFormat format)
DepthFormat TranslateDepthFormatFromDirectX12 (VkFormat format)
VkFormat TranslateColorFormatToDirectX12 (ColorFormat in, uint8_t &channels)
VkFormat TranslateDepthFormatToDirectX12 (DepthFormat in)
VkImageView createImageView (VkImage image, VkFormat format, VkImageAspectFlags aspectFlags, uint32_t mipLevels)
void createImage (uint32_t width, uint32_t height, uint32_t mipLevels, VkFormat format, VkImageTiling tiling, VkImageUsageFlags usage, VkMemoryPropertyFlags properties, VkImage &image, VkDeviceMemory &imageMemory)
void createBuffer (VkDeviceSize size, VkBufferUsageFlags usage, VkMemoryPropertyFlags properties, VkBuffer &buffer, VkDeviceMemory &bufferMemory)
VkCommandBuffer beginSingleTimeCommands ()
void endSingleTimeCommands (VkCommandBuffer commandBuffer)
void copyBuffer (VkBuffer srcBuffer, VkBuffer dstBuffer, VkDeviceSize size)
void transitionImageLayout (VkImage image, VkFormat format, VkImageLayout oldLayout, VkImageLayout newLayout, uint32_t mipLevels)
void copyBufferToImage (VkBuffer buffer, VkImage image, uint32_t width, uint32_t height)
OpenGLFormats TranslateFormatToOpenGL (Format format)
GLenum TranslateMinFilterToOpenGL (bool hasMips, TextureFilter minFilter, TextureFilter mipFilter)
GLenum TranslateMagFilterToOpenGL (TextureFilter)
GLenum TranslateWrapToOpenGL (TextureWrapMode)
GLenum TranslateCullModeToOpenGL (CullMode cullMode)
GLenum TranslatePolygonModeToOpenGL (PolygonFillMode mode)
GLenum TranslateGeometryTypeToOpenGL (GeometryType geometryType)
GLenum TranslateBlendOpToOpenGL (BlendOperation op)
GLenum TranslateBlendFactorToOpenGL (BlendFactor factor)
GLenum TranslateCompareOpToOpenGL (CompareOperation op)

Variables

constexpr uint8_t numShaderGraphicStage = static_cast<uint8_t>(ShaderStage::GraphicsCount)
constexpr uint8_t numShaderTotalStage = static_cast<uint8_t>(ShaderStage::Count)
constexpr const char * shaderStageNames []
constexpr const char * blendOperationNames []
constexpr const char * blendFactorNames []
constexpr const char * geometryTypeNames []
constexpr const char * polygonFillModeNames []
constexpr const char * compareOperationNames []
constexpr const char * colorMaskNames []
constexpr const char * cullModeNames []
const int num_buffers = 3
const char * dx12_semantic_names [] = {"POSITION", "COLOR", "TEXCOORD", "TEXCOORD", "NORMAL", "TANGENT", ""}
DXGI_FORMAT dx12_color_format []
DXGI_FORMAT dx12_vert_format []

Variable Documentation

◆ blendFactorNames

const char* Grindstone::GraphicsAPI::blendFactorNames[]
constexpr
Initial value:
= {
#define GSExpandEntry(key)
BLEND_FACTORS_LIST
}

◆ blendOperationNames

const char* Grindstone::GraphicsAPI::blendOperationNames[]
constexpr
Initial value:
= {
#define GSExpandEntry(key)
BLEND_OPERATIONS_LIST
}

◆ colorMaskNames

const char* Grindstone::GraphicsAPI::colorMaskNames[]
constexpr
Initial value:
= {
"None",
"R",
"G",
"RG",
"B",
"RB",
"GB",
"RGB",
"A",
"RA",
"GA",
"RGA",
"BA",
"RBA",
"GBA",
"RGBA"
}

◆ compareOperationNames

const char* Grindstone::GraphicsAPI::compareOperationNames[]
constexpr
Initial value:
= {
#define GSExpandEntry(key, bit)
SHADER_STAGE_TYPES
}

◆ cullModeNames

const char* Grindstone::GraphicsAPI::cullModeNames[]
constexpr
Initial value:
= {
"None",
"Front",
"Back",
"Both"
}

◆ dx12_color_format

DXGI_FORMAT Grindstone::GraphicsAPI::dx12_color_format[]
Initial value:
= {
DXGI_FORMAT_R8_TYPELESS,
DXGI_FORMAT_R8G8_TYPELESS,
DXGI_FORMAT_UNKNOWN,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R10G10B10A2_TYPELESS,
DXGI_FORMAT_R16_TYPELESS,
DXGI_FORMAT_R16G16_TYPELESS,
DXGI_FORMAT_UNKNOWN,
DXGI_FORMAT_R16G16B16A16_TYPELESS,
DXGI_FORMAT_R32G32B32_TYPELESS,
DXGI_FORMAT_R32G32B32A32_TYPELESS,
DXGI_FORMAT_BC1_TYPELESS,
DXGI_FORMAT_BC1_TYPELESS,
DXGI_FORMAT_BC2_TYPELESS,
DXGI_FORMAT_BC3_TYPELESS,
DXGI_FORMAT_BC1_TYPELESS,
DXGI_FORMAT_BC1_TYPELESS,
DXGI_FORMAT_BC2_TYPELESS,
DXGI_FORMAT_BC3_TYPELESS,
}

◆ dx12_vert_format

DXGI_FORMAT Grindstone::GraphicsAPI::dx12_vert_format[]
Initial value:
= {
DXGI_FORMAT_R32_FLOAT,
DXGI_FORMAT_R32G32_FLOAT,
DXGI_FORMAT_R32G32B32_FLOAT,
DXGI_FORMAT_R32G32B32A32_FLOAT
}

◆ geometryTypeNames

const char* Grindstone::GraphicsAPI::geometryTypeNames[]
constexpr
Initial value:
= {
#define GSExpandEntry(key)
GEOMETRY_TYPES_LIST
}

◆ polygonFillModeNames

const char* Grindstone::GraphicsAPI::polygonFillModeNames[]
constexpr
Initial value:
= {
"Point",
"Line",
"Fill"
}

◆ shaderStageNames

const char* Grindstone::GraphicsAPI::shaderStageNames[]
constexpr
Initial value:
= {
#define GSExpandEntry(key, bit)
SHADER_STAGE_TYPES
}