Cogs.Rendering
|
Namespaces | |
namespace | Memory |
Classes | |
struct | AccessMode |
Access mode to buffers after creation. More... | |
struct | BindFlags |
Bind flags describe how a resource can be used by the graphics pipeline. More... | |
struct | BlendFlags |
struct | BlendState |
Encapsulates blend state for the graphics pipeline in a state object. More... | |
struct | CommandGroupAnnotation |
RAII-helper for pushCommandGroupAnnotation/pushCommandGroupAnnotation. More... | |
struct | DepthStencilState |
Encapsulates state for depth buffer usage and stencil buffer usage in a state object. More... | |
struct | DepthStencilViewDescription |
Describes a single depth stencil view and which resources to use from the underlying texture. More... | |
struct | EffectDescription |
Contains an effect description used to load a single effect. More... | |
struct | EffectFlags |
Flags used to describe effect source. More... | |
struct | Factory |
Graphics device construction factory. More... | |
struct | FormatInfo |
struct | Framebuffer |
Framebuffers to select from when doing framebuffer operations. More... | |
struct | FrameStatistics |
struct | GraphicsDeviceCapabilities |
Contains device capabilities. More... | |
struct | GraphicsDeviceSettings |
Settings for graphics device initialization. More... | |
struct | Handle_t |
Handle template class used to provide opaque, non-converting handles. More... | |
struct | IBuffers |
Provides buffer management functionality. More... | |
struct | ICapabilities |
Provides capability query functionality. More... | |
struct | IContext |
Represents a graphics device context which can receive rendering commands. More... | |
struct | IEffects |
Provides effects and shader management functionality. More... | |
class | IGraphicsDevice |
Represents a graphics device used to manage graphics resources and issue drawing commands. More... | |
struct | IIOHandler |
I/O handler. More... | |
struct | IPipelineStates |
struct | IRenderTargets |
Provides render target management functionality. More... | |
class | ISwapChain |
struct | ISyncObjects |
Provides sync object management. More... | |
struct | ITextures |
Provides texture management functionality. More... | |
struct | MapMode |
Mapping modes for resources managed by the graphics system. More... | |
struct | MappedBuffer |
Provides RAII style mapping of a buffer resource. More... | |
struct | MultiViewDescription |
Describes multiview framebuffer layout. More... | |
struct | PackedVertexElement |
struct | PresentFlags |
Flags controlling presentation. More... | |
struct | PrimitiveType |
Primitive types for interpreting vertex data sent to the graphics pipeline. More... | |
struct | RasterizerState |
Encapsulates state for primitive rasterization in a state object. More... | |
struct | RenderingAllocatorInfo |
Allocation information. More... | |
struct | RenderPassInfo |
struct | RenderTargetViewDescription |
Describes a single render target view and which resources to use from the underlying texture. More... | |
struct | ResourceStatistics |
struct | SamplerState |
Encapsulates state for texture sampling in a state object. More... | |
struct | Series |
Known graphics device series. More... | |
struct | TextureData |
struct | TextureDescription |
struct | TextureExtent |
struct | TextureFlags |
Texture flags describing valid usage for a texture object. More... | |
struct | TextureViewDescription |
Describes how to fetch data from a texture in shaders. More... | |
struct | UploadStatistics |
struct | Usage |
Usage flags for buffers. More... | |
struct | Vendors |
Known graphics device vendors. More... | |
struct | VertexElement |
Vertex element structure used to describe a single data element in a vertex for the input assembler. More... | |
struct | VertexFormat |
Vertex format structure used to describe a single vertex for the input assembler. More... | |
struct | VertexFormats |
struct | VertexFormatStorage |
Typedefs | |
typedef Handle_t< struct RasterizerState > | RasterizerStateHandle |
typedef Handle_t< struct DepthStencilState > | DepthStencilStateHandle |
typedef Handle_t< struct BlendState > | BlendStateHandle |
typedef Handle_t< InputLayoutTag > | InputLayoutHandle |
typedef Handle_t< BufferTag > | BufferHandle |
typedef Handle_t< BufferTag, BufferHandle > | VertexBufferHandle |
typedef Handle_t< BufferTag, BufferHandle > | IndexBufferHandle |
typedef Handle_t< VertexFormatTag > | VertexFormatHandle |
typedef Handle_t< VertexArrayObjectTag > | VertexArrayObjectHandle |
typedef intptr_t | TextureNativeHandle |
typedef Handle_t< TextureTag > | TextureHandle |
typedef Handle_t< SamplerTag > | SamplerStateHandle |
typedef Handle_t< EffectTag > | EffectHandle |
typedef Handle_t< ShaderTag > | ShaderHandle |
typedef Handle_t< RenderPipelineTag > | RenderPipelineHandle |
typedef Handle_t< ComputePipelineTag > | ComputePipelineHandle |
typedef Handle_t< RenderTargetTag > | RenderTargetHandle |
typedef Handle_t< DepthStencilTag > | DepthStencilHandle |
typedef Handle_t< VariableBindingTag > | EffectVariableHandle |
typedef Handle_t< ConstantBufferBindingTag > | ConstantBufferBindingHandle |
typedef Handle_t< TextureBindingTag > | TextureBindingHandle |
typedef Handle_t< SamplerStateBindingTag > | SamplerStateBindingHandle |
typedef Handle_t< BufferBindingTag > | BufferBindingHandle |
typedef Handle_t< TextureViewTag > | TextureViewHandle |
typedef Handle_t< FenceTag > | FenceHandle |
using | DataFormat = Format |
using | TextureFormat = Format |
typedef std::pair< std::string, std::string > | PreprocessorDefinition |
Preprocessor definition. | |
typedef std::vector< PreprocessorDefinition > | PreprocessorDefinitions |
A set of preprocessor definitions. | |
Functions | |
template<typename T > | |
bool | HandleIsValid (const Handle_t< T > handle) |
template<typename T , typename U > | |
bool | HandleIsValid (const Handle_t< T, U > handle) |
bool | isDebug () |
COGS_RENDERING_ENABLE_ENUM_FLAGS (FormatFlags) | |
COGSRENDERING_DLL_API const FormatInfo * | getFormatInfo (Format format) |
COGSRENDERING_DLL_API DataFormat | parseDataFormat (const StringView &format) |
COGS_RENDERING_ENABLE_ENUM_FLAGS (TextureFlags::ETextureFlags) | |
const char * | getResourceDimensionsName (ResourceDimensions target) |
size_t | getBlockSize (TextureFormat format) |
TextureExtent | getBlockExtent (TextureFormat format) |
size_t | getComponents (TextureFormat format) |
uint32_t | getMipLevels (const uint32_t width, const uint32_t height) |
uint32_t | getMipSize (uint32_t size, uint32_t level) |
VertexFormatStorage & | getStorage () |
StringView COGSRENDERING_DLL_API | getElementSemanticName (ElementSemantic semantic) |
uint32_t COGSRENDERING_DLL_API | getSize (const Cogs::VertexFormat &vertexFormat) |
uint32_t COGSRENDERING_DLL_API | getSize (VertexFormatHandle vertexFormatHandle) |
size_t COGSRENDERING_DLL_API | getHash (const Cogs::VertexFormat &vertexFormat) |
size_t COGSRENDERING_DLL_API | getHash (VertexFormatHandle vertexFormatHandle) |
size_t | hash (const VertexElement &element, size_t hashValue=Cogs::hash()) |
Calculate a hash value for the specified vertex element. | |
size_t | hash (const Cogs::VertexFormat &format, size_t hashValue=Cogs::hash()) |
Calculate a hash value for the given vertex format. | |
typedef Handle_t<struct BlendState> Cogs::BlendStateHandle |
typedef Handle_t<BufferBindingTag> Cogs::BufferBindingHandle |
typedef Handle_t<BufferTag> Cogs::BufferHandle |
typedef Handle_t<ComputePipelineTag> Cogs::ComputePipelineHandle |
typedef Handle_t<ConstantBufferBindingTag> Cogs::ConstantBufferBindingHandle |
using Cogs::DataFormat = typedef Format |
typedef Handle_t<DepthStencilTag> Cogs::DepthStencilHandle |
typedef Handle_t<struct DepthStencilState> Cogs::DepthStencilStateHandle |
typedef Handle_t<EffectTag> Cogs::EffectHandle |
typedef Handle_t<VariableBindingTag> Cogs::EffectVariableHandle |
typedef Handle_t<FenceTag> Cogs::FenceHandle |
typedef Handle_t<BufferTag, BufferHandle> Cogs::IndexBufferHandle |
typedef Handle_t<InputLayoutTag> Cogs::InputLayoutHandle |
typedef std::pair<std::string, std::string> Cogs::PreprocessorDefinition |
Preprocessor definition.
typedef std::vector<PreprocessorDefinition> Cogs::PreprocessorDefinitions |
A set of preprocessor definitions.
typedef Handle_t<struct RasterizerState> Cogs::RasterizerStateHandle |
typedef Handle_t<RenderPipelineTag> Cogs::RenderPipelineHandle |
typedef Handle_t<RenderTargetTag> Cogs::RenderTargetHandle |
typedef Handle_t<SamplerStateBindingTag> Cogs::SamplerStateBindingHandle |
typedef Handle_t<SamplerTag> Cogs::SamplerStateHandle |
typedef Handle_t<ShaderTag> Cogs::ShaderHandle |
typedef Handle_t<TextureBindingTag> Cogs::TextureBindingHandle |
using Cogs::TextureFormat = typedef Format |
typedef Handle_t<TextureTag> Cogs::TextureHandle |
typedef intptr_t Cogs::TextureNativeHandle |
typedef Handle_t<TextureViewTag> Cogs::TextureViewHandle |
typedef Handle_t<VertexArrayObjectTag> Cogs::VertexArrayObjectHandle |
typedef Handle_t<BufferTag, BufferHandle> Cogs::VertexBufferHandle |
typedef Handle_t<VertexFormatTag> Cogs::VertexFormatHandle |
|
strong |
|
strong |
|
strong |
Element semantics used to map data to the shader stage.
|
strong |
|
strong |
enum Cogs::GraphicsDeviceFlags : int |
Flags controlling the behavior of a graphics device.
Enumerator | |
---|---|
None | Default flags. |
Debug | If available, the device will operate in debug mode, performing additional validation of input data, state changes etc. When compiling in debug mode, a debug device is always created. |
EnableDiagnostics | If available, the device will print diagnostic information to the log. The information printed is usually more extensive when this flag is combined with the
When compiling in debug mode, diagnostic output is always enabled. |
EnableShaderCache | Enables using a shader cache to avoid recompiling previously seen shaders. |
EnableTraceLogging | Enables trace logging. May impact performance negatively. |
DumpShaderContents | Dump shader contents for debugging. |
ForceSoftwareRendering | Force software rendering. |
UseSharedSurface | Use shared surface for D3D9 interop. |
UseESCompatibility | Instead of creating an ES2 context via WGL, create a full GL context and check for ARB_ES2_compatibilty. |
UseSwapEffectDiscard | Under DX11 the default swap effect is FLIP_DISCARD, however there are some systems where this does not work. This flag forces the engine to fall back to using DISCARD on these machines. |
UseOpenGLClipControl | For OpenGL / OpenGLES backends. Enable clip_control when available. |
|
strong |
Contains types of graphics devices that may be supported.
|
strong |
|
strong |
|
strong |
|
strong |
Cogs::COGS_RENDERING_ENABLE_ENUM_FLAGS | ( | FormatFlags | ) |
Cogs::COGS_RENDERING_ENABLE_ENUM_FLAGS | ( | TextureFlags::ETextureFlags | ) |
TextureExtent COGSRENDERING_DLL_API Cogs::getBlockExtent | ( | TextureFormat | format | ) |
References Cogs::FormatInfo::blockExtent, and getFormatInfo().
Referenced by Cogs::TextureData::init().
size_t COGSRENDERING_DLL_API Cogs::getBlockSize | ( | TextureFormat | format | ) |
References Cogs::FormatInfo::blockSize, and getFormatInfo().
Referenced by Cogs::TextureDescription::estimateMemorySize(), and Cogs::TextureData::init().
size_t COGSRENDERING_DLL_API Cogs::getComponents | ( | TextureFormat | format | ) |
References Cogs::FormatInfo::elements, and getFormatInfo().
Cogs::StringView Cogs::getElementSemanticName | ( | ElementSemantic | semantic | ) |
const Cogs::FormatInfo * Cogs::getFormatInfo | ( | Format | format | ) |
Referenced by Cogs::VertexFormats::createVertexFormat(), getBlockExtent(), getBlockSize(), and getComponents().
|
inline |
References Cogs::VertexFormat::hash.
Referenced by getHash().
|
inline |
References getHash(), and Cogs::VertexFormats::getVertexFormat().
uint32_t COGSRENDERING_DLL_API Cogs::getMipLevels | ( | const uint32_t | width, |
const uint32_t | height | ||
) |
uint32_t COGSRENDERING_DLL_API Cogs::getMipSize | ( | uint32_t | size, |
uint32_t | level | ||
) |
COGSRENDERING_DLL_API const char * Cogs::getResourceDimensionsName | ( | ResourceDimensions | target | ) |
References ResourceDimensions_Size.
|
inline |
References Cogs::VertexFormat::size.
Referenced by getSize().
|
inline |
References getSize(), and Cogs::VertexFormats::getVertexFormat().
VertexFormatStorage & Cogs::getStorage | ( | ) |
Referenced by Cogs::VertexFormats::createVertexFormat(), and Cogs::VertexFormats::getVertexFormat().
|
inline |
|
inline |
|
inline |
Calculate a hash value for the given vertex format.
References Cogs::VertexFormat::elements, and hash().
|
inline |
Calculate a hash value for the specified vertex element.
References Cogs::VertexElement::format, hash(), Cogs::VertexElement::inputType, Cogs::VertexElement::instanceStep, Cogs::VertexElement::offset, Cogs::VertexElement::semantic, and Cogs::VertexElement::semanticIndex.
Referenced by Cogs::VertexFormats::createVertexFormat(), hash(), Cogs::TextureViewDescription::hash(), and parseDataFormat().
|
inline |
Cogs::DataFormat Cogs::parseDataFormat | ( | const StringView & | format | ) |
References hash().