Pyrogenesis  trunk
Namespaces | Classes | Enumerations | Functions
Renderer::Backend Namespace Reference

Namespaces

 ColorWriteMask
 
 Dummy
 
 GL
 
 Sampler
 
 Vulkan
 

Classes

class  IBuffer
 
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  SDepthStencilAttachment
 
struct  SDepthStencilStateDesc
 
struct  SGraphicsPipelineStateDesc
 
struct  SRasterizationStateDesc
 
struct  SStencilOpState
 
struct  SVertexAttributeFormat
 

Enumerations

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

Enumerator
GL 
GL_ARB 
VULKAN 
DUMMY 

◆ BlendFactor

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

Enumerator
ADD 
SUBTRACT 
REVERSE_SUBTRACT 
MIN 
MAX 

◆ CompareOp

Enumerator
NEVER 
LESS 
EQUAL 
LESS_OR_EQUAL 
GREATER 
NOT_EQUAL 
GREATER_OR_EQUAL 
ALWAYS 

◆ CullMode

Enumerator
NONE 
FRONT 
BACK 

◆ Format

Enumerator
UNDEFINED 
R8_UNORM 
R8G8_UNORM 
R8G8_UINT 
R8G8B8_UNORM 
R8G8B8A8_UNORM 
R8G8B8A8_UINT 
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

Enumerator
COUNTER_CLOCKWISE 
CLOCKWISE 

◆ PolygonMode

Enumerator
FILL 
LINE 

◆ StencilOp

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)