Cogs.Core
|
Contains device capabilities. More...
#include <ICapabilities.h>
Public Member Functions | |
bool | CheckFeatureLevel (int major, int minor) const |
Public Attributes | |
int | featureLevelMajor = -1 |
int | featureLevelMinor = -1 |
int | MaxTextureSlots = 0 |
int | MaxVertexInputElements = 32 |
unsigned | MaxSamples = 8 |
unsigned | MaxMultiViews = 0 |
float | MaxAnisotropy = 1.f |
unsigned | ConstantBufferOffsetAlignment = 256 |
Minimum offset alignment when binding constant buffers. | |
uint32_t | MaxTexture2DSize = 16384 |
Using D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION as default. | |
uint32_t | MaxTexture3DSize = 2048 |
Using D3D11_REQ_TEXTURE3D_U_V_OR_W_DIMENSION as default. | |
uint32_t | MaxTextureCubeSize = 16384 |
Using D3D11_REQ_TEXTURECUBE_DIMENSION as default. | |
uint32_t | MaxTextureArrayLayers = 2048 |
Using D3D11_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION as default. | |
bool | RenderPass = false |
bool | SyncObjects = false |
Support for syncronization objects. | |
bool | GeometryShaders = false |
bool | TessellationShaders = false |
bool | ComputeShaders = false |
bool | ConstantBufferRange = false |
supports binding a range of a constant buffer. | |
bool | IndependentSamplerState = true |
Sampler state not tied to a texture unit (hlsl style) | |
bool | SupportsHlsl = true |
bool | Instancing = true |
Supports instanced draw calls. | |
bool | StartInstance = true |
Supports non-zero start instance in instanced draw calls. | |
bool | UnsignedIntIndexes = true |
bool | FloatTextures = true |
bool | TextureCompressionS3TC = false |
bool | TextureCompressionRGTC = false |
bool | TextureCompressionBPTC = false |
bool | TextureCompressionETC = false |
bool | TextureCompressionPVRTC = false |
bool | TextureCompressionASTC = false |
bool | FragDepth = true |
Allows setting fragdepth in fragment shader. | |
bool | VertexAndIndexDataInSharedBuffers = true |
bool | SupportsMultipleThreads = true |
bool | TextureCubeArrays = true |
supports texture cube arrays. | |
bool | VertexArrayObjects = false |
Supports binding input geometry using GL vertex array objects. | |
bool | MultiView = false |
bool | MultiSampleMultiView = false |
bool | OriginOnTop = true |
If true, y=0 refers to top of screen, otherwise it refers to bottom. | |
bool | DepthNegativeOneToOne = false |
If true, min z depth=-1 otherwise it is min z depth = 0 (max z depth = 1). | |
bool | DefaultColorTargetHasLinearEncoding = true |
Encoding of default color target. | |
size_t | DedicatedVideoMemory = unknownAmount |
size_t | DedicatedSystemMemory = unknownAmount |
size_t | SharedSystemMemory = unknownAmount |
Static Public Attributes | |
static constexpr size_t | unknownAmount = ~static_cast<size_t>(0) |
Contains device capabilities.
Definition at line 66 of file ICapabilities.h.
|
inline |
Definition at line 128 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::ComputeShaders = false |
Definition at line 89 of file ICapabilities.h.
unsigned Cogs::GraphicsDeviceCapabilities::ConstantBufferOffsetAlignment = 256 |
Minimum offset alignment when binding constant buffers.
Definition at line 78 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::ConstantBufferRange = false |
supports binding a range of a constant buffer.
Definition at line 90 of file ICapabilities.h.
size_t Cogs::GraphicsDeviceCapabilities::DedicatedSystemMemory = unknownAmount |
Definition at line 125 of file ICapabilities.h.
size_t Cogs::GraphicsDeviceCapabilities::DedicatedVideoMemory = unknownAmount |
Definition at line 124 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::DefaultColorTargetHasLinearEncoding = true |
Encoding of default color target.
If true, encoding is in linear space and conversion to sRGB is handled automatically by display output. If false, encoding is in sRGB space, so if pixel shader output is in linear space (which it usually is), we have to convert to sRGB ourselves, i.e. output pow(abs(color),1.0/2.2) or a similar expression.
Definition at line 122 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::DepthNegativeOneToOne = false |
If true, min z depth=-1 otherwise it is min z depth = 0 (max z depth = 1).
Definition at line 111 of file ICapabilities.h.
Referenced by Cogs::Core::Renderer::getClearDepth(), Cogs::Core::Renderer::getNearDepth(), Cogs::Core::Renderer::getProjectionMatrix(), Cogs::Core::Renderer::getViewFromViewportMatrix(), and Cogs::Core::Renderer::updatePermutation().
int Cogs::GraphicsDeviceCapabilities::featureLevelMajor = -1 |
Definition at line 70 of file ICapabilities.h.
int Cogs::GraphicsDeviceCapabilities::featureLevelMinor = -1 |
Definition at line 71 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::FloatTextures = true |
Definition at line 96 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::FragDepth = true |
Allows setting fragdepth in fragment shader.
Definition at line 103 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::GeometryShaders = false |
Definition at line 87 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::IndependentSamplerState = true |
Sampler state not tied to a texture unit (hlsl style)
Definition at line 91 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::Instancing = true |
Supports instanced draw calls.
Definition at line 93 of file ICapabilities.h.
float Cogs::GraphicsDeviceCapabilities::MaxAnisotropy = 1.f |
Definition at line 77 of file ICapabilities.h.
unsigned Cogs::GraphicsDeviceCapabilities::MaxMultiViews = 0 |
Definition at line 76 of file ICapabilities.h.
unsigned Cogs::GraphicsDeviceCapabilities::MaxSamples = 8 |
Definition at line 75 of file ICapabilities.h.
uint32_t Cogs::GraphicsDeviceCapabilities::MaxTexture2DSize = 16384 |
Using D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION as default.
Definition at line 80 of file ICapabilities.h.
Referenced by Cogs::Core::Image360System::update().
uint32_t Cogs::GraphicsDeviceCapabilities::MaxTexture3DSize = 2048 |
Using D3D11_REQ_TEXTURE3D_U_V_OR_W_DIMENSION as default.
Definition at line 81 of file ICapabilities.h.
uint32_t Cogs::GraphicsDeviceCapabilities::MaxTextureArrayLayers = 2048 |
Using D3D11_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION as default.
Definition at line 83 of file ICapabilities.h.
Referenced by Cogs::Core::Image360System::update().
uint32_t Cogs::GraphicsDeviceCapabilities::MaxTextureCubeSize = 16384 |
Using D3D11_REQ_TEXTURECUBE_DIMENSION as default.
Definition at line 82 of file ICapabilities.h.
int Cogs::GraphicsDeviceCapabilities::MaxTextureSlots = 0 |
Definition at line 73 of file ICapabilities.h.
int Cogs::GraphicsDeviceCapabilities::MaxVertexInputElements = 32 |
Definition at line 74 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::MultiSampleMultiView = false |
Definition at line 109 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::MultiView = false |
Definition at line 108 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::OriginOnTop = true |
If true, y=0 refers to top of screen, otherwise it refers to bottom.
Definition at line 110 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::RenderPass = false |
Definition at line 85 of file ICapabilities.h.
size_t Cogs::GraphicsDeviceCapabilities::SharedSystemMemory = unknownAmount |
Definition at line 126 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::StartInstance = true |
Supports non-zero start instance in instanced draw calls.
Definition at line 94 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::SupportsHlsl = true |
Definition at line 92 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::SupportsMultipleThreads = true |
Definition at line 105 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::SyncObjects = false |
Support for syncronization objects.
Definition at line 86 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::TessellationShaders = false |
Definition at line 88 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::TextureCompressionASTC = false |
Definition at line 102 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::TextureCompressionBPTC = false |
Definition at line 99 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::TextureCompressionETC = false |
Definition at line 100 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::TextureCompressionPVRTC = false |
Definition at line 101 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::TextureCompressionRGTC = false |
Definition at line 98 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::TextureCompressionS3TC = false |
Definition at line 97 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::TextureCubeArrays = true |
supports texture cube arrays.
Definition at line 106 of file ICapabilities.h.
|
staticconstexpr |
Definition at line 68 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::UnsignedIntIndexes = true |
Definition at line 95 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::VertexAndIndexDataInSharedBuffers = true |
Definition at line 104 of file ICapabilities.h.
bool Cogs::GraphicsDeviceCapabilities::VertexArrayObjects = false |
Supports binding input geometry using GL vertex array objects.
Definition at line 107 of file ICapabilities.h.