Pyrogenesis HEAD
Pyrogenesis, a RTS Engine
Renderer::Backend Namespace Reference

Namespaces

namespace  ColorWriteMask
 
namespace  Dummy
 
namespace  GL
 
namespace  Sampler
 
namespace  Vulkan
 

Classes

class  IBuffer
 
class  IComputePipelineState
 A holder for precompiled compute pipeline description. More...
 
class  IDevice
 
class  IDeviceCommandContext
 
class  IDeviceObject
 
class  IFramebuffer
 IFramebuffer stores attachments which should be used by backend as rendering destinations. More...
 
class  IGraphicsPipelineState
 A holder for precompiled graphics pipeline description. More...
 
class  IShaderProgram
 IShaderProgram is a container for multiple shaders of different types. More...
 
class  ITexture
 
class  IVertexInputLayout
 IVertexInputLayout stores precompiled list of vertex attributes. More...
 
struct  SBlendStateDesc
 
struct  SColorAttachment
 
struct  SComputePipelineStateDesc
 
struct  SDepthStencilAttachment
 
struct  SDepthStencilStateDesc
 
struct  SGraphicsPipelineStateDesc
 
struct  SRasterizationStateDesc
 
struct  SStencilOpState
 
struct  SVertexAttributeFormat
 

Enumerations

enum class  Backend { GL , GL_ARB , VULKAN , DUMMY }
 
enum class  CompareOp {
  NEVER , LESS , EQUAL , LESS_OR_EQUAL ,
  GREATER , NOT_EQUAL , GREATER_OR_EQUAL , ALWAYS
}
 
enum class  Format {
  UNDEFINED , R8_UNORM , R8G8_UNORM , R8G8_UINT ,
  R8G8B8_UNORM , R8G8B8A8_UNORM , R8G8B8A8_UINT , B8G8R8A8_UNORM ,
  A8_UNORM , L8_UNORM , R16_UNORM , R16_UINT ,
  R16_SINT , R16G16_UNORM , R16G16_UINT , R16G16_SINT ,
  R32_SFLOAT , R32G32_SFLOAT , R32G32B32_SFLOAT , R32G32B32A32_SFLOAT ,
  D16_UNORM , D24_UNORM , D24_UNORM_S8_UINT , D32_SFLOAT ,
  D32_SFLOAT_S8_UINT , BC1_RGB_UNORM , BC1_RGBA_UNORM , BC2_UNORM ,
  BC3_UNORM
}
 
enum class  AttachmentLoadOp { LOAD , CLEAR , DONT_CARE }
 Load operation is set for each attachment, what should be done with its content on BeginFramebufferPass. More...
 
enum class  AttachmentStoreOp { STORE , DONT_CARE }
 Store operation is set for each attachment, what should be done with its content on EndFramebufferPass. More...
 
enum class  VertexAttributeStream : uint32_t {
  POSITION , NORMAL , COLOR , UV0 ,
  UV1 , UV2 , UV3 , UV4 ,
  UV5 , UV6 , UV7
}
 
enum class  VertexAttributeRate : uint32_t { PER_VERTEX , PER_INSTANCE }
 
enum class  StencilOp {
  KEEP , ZERO , REPLACE , INCREMENT_AND_CLAMP ,
  DECREMENT_AND_CLAMP , INVERT , INCREMENT_AND_WRAP , DECREMENT_AND_WRAP
}
 
enum class  BlendFactor {
  ZERO , ONE , SRC_COLOR , ONE_MINUS_SRC_COLOR ,
  DST_COLOR , ONE_MINUS_DST_COLOR , SRC_ALPHA , ONE_MINUS_SRC_ALPHA ,
  DST_ALPHA , ONE_MINUS_DST_ALPHA , CONSTANT_COLOR , ONE_MINUS_CONSTANT_COLOR ,
  CONSTANT_ALPHA , ONE_MINUS_CONSTANT_ALPHA , SRC_ALPHA_SATURATE , SRC1_COLOR ,
  ONE_MINUS_SRC1_COLOR , SRC1_ALPHA , ONE_MINUS_SRC1_ALPHA
}
 
enum class  BlendOp {
  ADD , SUBTRACT , REVERSE_SUBTRACT , MIN ,
  MAX
}
 
enum class  PolygonMode { FILL , LINE }
 
enum class  CullMode { NONE , FRONT , BACK }
 
enum class  FrontFace { COUNTER_CLOCKWISE , CLOCKWISE }
 

Functions

CompareOp ParseCompareOp (const CStr &str)
 
bool IsDepthFormat (const Format format)
 
SGraphicsPipelineStateDesc MakeDefaultGraphicsPipelineStateDesc ()
 
StencilOp ParseStencilOp (const CStr &str)
 
BlendFactor ParseBlendFactor (const CStr &str)
 
BlendOp ParseBlendOp (const CStr &str)
 
PolygonMode ParsePolygonMode (const CStr &str)
 
CullMode ParseCullMode (const CStr &str)
 
FrontFace ParseFrontFace (const CStr &str)
 

Enumeration Type Documentation

◆ AttachmentLoadOp

Load operation is set for each attachment, what should be done with its content on BeginFramebufferPass.

Enumerator
LOAD 
CLEAR 
DONT_CARE 

◆ AttachmentStoreOp

Store operation is set for each attachment, what should be done with its content on EndFramebufferPass.

Enumerator
STORE 
DONT_CARE 

◆ Backend

enum class Renderer::Backend::Backend
strong
Enumerator
GL 
GL_ARB 
VULKAN 
DUMMY 

◆ BlendFactor

enum class Renderer::Backend::BlendFactor
strong
Enumerator
ZERO 
ONE 
SRC_COLOR 
ONE_MINUS_SRC_COLOR 
DST_COLOR 
ONE_MINUS_DST_COLOR 
SRC_ALPHA 
ONE_MINUS_SRC_ALPHA 
DST_ALPHA 
ONE_MINUS_DST_ALPHA 
CONSTANT_COLOR 
ONE_MINUS_CONSTANT_COLOR 
CONSTANT_ALPHA 
ONE_MINUS_CONSTANT_ALPHA 
SRC_ALPHA_SATURATE 
SRC1_COLOR 
ONE_MINUS_SRC1_COLOR 
SRC1_ALPHA 
ONE_MINUS_SRC1_ALPHA 

◆ BlendOp

enum class Renderer::Backend::BlendOp
strong
Enumerator
ADD 
SUBTRACT 
REVERSE_SUBTRACT 
MIN 
MAX 

◆ CompareOp

enum class Renderer::Backend::CompareOp
strong
Enumerator
NEVER 
LESS 
EQUAL 
LESS_OR_EQUAL 
GREATER 
NOT_EQUAL 
GREATER_OR_EQUAL 
ALWAYS 

◆ CullMode

enum class Renderer::Backend::CullMode
strong
Enumerator
NONE 
FRONT 
BACK 

◆ Format

enum class Renderer::Backend::Format
strong
Enumerator
UNDEFINED 
R8_UNORM 
R8G8_UNORM 
R8G8_UINT 
R8G8B8_UNORM 
R8G8B8A8_UNORM 
R8G8B8A8_UINT 
B8G8R8A8_UNORM 
A8_UNORM 
L8_UNORM 
R16_UNORM 
R16_UINT 
R16_SINT 
R16G16_UNORM 
R16G16_UINT 
R16G16_SINT 
R32_SFLOAT 
R32G32_SFLOAT 
R32G32B32_SFLOAT 
R32G32B32A32_SFLOAT 
D16_UNORM 
D24_UNORM 
D24_UNORM_S8_UINT 
D32_SFLOAT 
D32_SFLOAT_S8_UINT 
BC1_RGB_UNORM 
BC1_RGBA_UNORM 
BC2_UNORM 
BC3_UNORM 

◆ FrontFace

enum class Renderer::Backend::FrontFace
strong
Enumerator
COUNTER_CLOCKWISE 
CLOCKWISE 

◆ PolygonMode

enum class Renderer::Backend::PolygonMode
strong
Enumerator
FILL 
LINE 

◆ StencilOp

enum class Renderer::Backend::StencilOp
strong
Enumerator
KEEP 
ZERO 
REPLACE 
INCREMENT_AND_CLAMP 
DECREMENT_AND_CLAMP 
INVERT 
INCREMENT_AND_WRAP 
DECREMENT_AND_WRAP 

◆ VertexAttributeRate

Enumerator
PER_VERTEX 
PER_INSTANCE 

◆ VertexAttributeStream

Enumerator
POSITION 
NORMAL 
COLOR 
UV0 
UV1 
UV2 
UV3 
UV4 
UV5 
UV6 
UV7 

Function Documentation

◆ IsDepthFormat()

bool Renderer::Backend::IsDepthFormat ( const Format  format)
inline

◆ MakeDefaultGraphicsPipelineStateDesc()

SGraphicsPipelineStateDesc Renderer::Backend::MakeDefaultGraphicsPipelineStateDesc ( )

◆ ParseBlendFactor()

BlendFactor Renderer::Backend::ParseBlendFactor ( const CStr &  str)

◆ ParseBlendOp()

BlendOp Renderer::Backend::ParseBlendOp ( const CStr &  str)

◆ ParseCompareOp()

CompareOp Renderer::Backend::ParseCompareOp ( const CStr &  str)

◆ ParseCullMode()

CullMode Renderer::Backend::ParseCullMode ( const CStr &  str)

◆ ParseFrontFace()

FrontFace Renderer::Backend::ParseFrontFace ( const CStr &  str)

◆ ParsePolygonMode()

PolygonMode Renderer::Backend::ParsePolygonMode ( const CStr &  str)

◆ ParseStencilOp()

StencilOp Renderer::Backend::ParseStencilOp ( const CStr &  str)