Diligent Engine  v.2.4.g
RenderDeviceD3DBase.hpp
Go to the documentation of this file.
1 /*
2  * Copyright 2019-2021 Diligent Graphics LLC
3  * Copyright 2015-2019 Egor Yusov
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  * In no event and under no legal theory, whether in tort (including negligence),
18  * contract, or otherwise, unless required by applicable law (such as deliberate
19  * and grossly negligent acts) or agreed to in writing, shall any Contributor be
20  * liable for any damages, including any direct, indirect, special, incidental,
21  * or consequential damages of any character arising as a result of this License or
22  * out of the use or inability to use the software (including but not limited to damages
23  * for loss of goodwill, work stoppage, computer failure or malfunction, or any and
24  * all other commercial damages or losses), even if such Contributor has been advised
25  * of the possibility of such damages.
26  */
27 
28 #pragma once
29 
32 
33 #include <dxgi.h>
34 
35 #include "RenderDeviceBase.hpp"
36 
37 namespace Diligent
38 {
39 
41 
42 template <typename EngineImplTraits>
43 class RenderDeviceD3DBase : public RenderDeviceBase<EngineImplTraits>
44 {
45 public:
47  IMemoryAllocator& RawMemAllocator,
48  IEngineFactory* pEngineFactory,
49  Uint32 NumDeferredContexts) :
50  RenderDeviceBase<EngineImplTraits>{pRefCounters, RawMemAllocator, pEngineFactory, NumDeferredContexts}
51  {
52  // Flag texture formats always supported in D3D11 and D3D12
53 
54  // clang-format off
55 #define FLAG_FORMAT(Fmt, IsSupported) m_TextureFormatsInfo[Fmt].Supported=IsSupported
56 
156 #undef FLAG_FORMAT
157  // clang-format on
158 
159  auto& Features = this->m_DeviceCaps.Features;
160 
162  Features.ShaderResourceQueries = DEVICE_FEATURE_STATE_ENABLED;
163  Features.IndirectRendering = DEVICE_FEATURE_STATE_ENABLED;
164  Features.WireframeFill = DEVICE_FEATURE_STATE_ENABLED;
165  Features.MultithreadedResourceCreation = DEVICE_FEATURE_STATE_ENABLED;
166  Features.ComputeShaders = DEVICE_FEATURE_STATE_ENABLED;
167  Features.GeometryShaders = DEVICE_FEATURE_STATE_ENABLED;
168  Features.Tessellation = DEVICE_FEATURE_STATE_ENABLED;
169  Features.OcclusionQueries = DEVICE_FEATURE_STATE_ENABLED;
170  Features.BinaryOcclusionQueries = DEVICE_FEATURE_STATE_ENABLED;
171  Features.TimestampQueries = DEVICE_FEATURE_STATE_ENABLED;
172  Features.PipelineStatisticsQueries = DEVICE_FEATURE_STATE_ENABLED;
173  Features.DurationQueries = DEVICE_FEATURE_STATE_ENABLED;
174  Features.DepthBiasClamp = DEVICE_FEATURE_STATE_ENABLED;
175  Features.DepthClamp = DEVICE_FEATURE_STATE_ENABLED;
176  Features.IndependentBlend = DEVICE_FEATURE_STATE_ENABLED;
177  Features.DualSourceBlend = DEVICE_FEATURE_STATE_ENABLED;
178  Features.MultiViewport = DEVICE_FEATURE_STATE_ENABLED;
179  Features.TextureCompressionBC = DEVICE_FEATURE_STATE_ENABLED;
180  Features.PixelUAVWritesAndAtomics = DEVICE_FEATURE_STATE_ENABLED;
181  Features.TextureUAVExtendedFormats = DEVICE_FEATURE_STATE_ENABLED;
182  }
183 
184 protected:
185  void ReadAdapterInfo(IDXGIAdapter1* pdxgiAdapter)
186  {
187  DXGI_ADAPTER_DESC1 dxgiAdapterDesc = {};
188 
189  auto hr = pdxgiAdapter->GetDesc1(&dxgiAdapterDesc);
190  if (SUCCEEDED(hr))
191  {
193  }
194  else
195  {
196  LOG_ERROR_MESSAGE("Failed to get DXGIDevice adapter desc. Adapter properties will be unknown.");
197  }
198  }
199 };
200 
201 } // namespace Diligent
Diligent::TEX_FORMAT_D24_UNORM_S8_UINT
@ TEX_FORMAT_D24_UNORM_S8_UINT
Two-component 32-bit format with 24 bits for unsigned-normalized-integer depth and 8 bits for stencil...
Definition: GraphicsTypes.h:525
Diligent::TEX_FORMAT_RG16_SINT
@ TEX_FORMAT_RG16_SINT
Two-component 32-bit signed-integer format with 16-bit channels. D3D counterpart: DXGI_FORMAT_R16G1...
Definition: GraphicsTypes.h:497
Diligent::DeviceFeatures::SeparablePrograms
DEVICE_FEATURE_STATE SeparablePrograms
Indicates if device supports separable shader programs.
Definition: GraphicsTypes.h:1580
Diligent::IReferenceCounters
Base interface for a reference counter object that stores the number of strong and weak references an...
Definition: ReferenceCounters.h:44
LOG_ERROR_MESSAGE
#define LOG_ERROR_MESSAGE(...)
Definition: Errors.hpp:122
Diligent::TEX_FORMAT_R8_TYPELESS
@ TEX_FORMAT_R8_TYPELESS
Single-component 8-bit typeless format. D3D counterpart: DXGI_FORMAT_R8_TYPELESS....
Definition: GraphicsTypes.h:590
Diligent::TEX_FORMAT_BGRX8_TYPELESS
@ TEX_FORMAT_BGRX8_TYPELESS
Four-component 32-bit typeless format that with 8 bits for each color channel, and 8 bits are unused....
Definition: GraphicsTypes.h:800
Diligent::TEX_FORMAT_RGB32_FLOAT
@ TEX_FORMAT_RGB32_FLOAT
Three-component 96-bit floating-point format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32...
Definition: GraphicsTypes.h:357
Diligent::TEX_FORMAT_RG16_FLOAT
@ TEX_FORMAT_RG16_FLOAT
Two-component 32-bit half-precision floating-point format with 16-bit channels. D3D counterpart: DX...
Definition: GraphicsTypes.h:477
Diligent::TEX_FORMAT_R32_FLOAT
@ TEX_FORMAT_R32_FLOAT
Single-component 32-bit floating-point format. D3D counterpart: DXGI_FORMAT_R32_FLOAT....
Definition: GraphicsTypes.h:509
FLAG_FORMAT
#define FLAG_FORMAT(Fmt, IsSupported)
Diligent::TEX_FORMAT_RGBA32_TYPELESS
@ TEX_FORMAT_RGBA32_TYPELESS
Four-component 128-bit typeless format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32G32B32...
Definition: GraphicsTypes.h:335
Diligent::TEX_FORMAT_R24_UNORM_X8_TYPELESS
@ TEX_FORMAT_R24_UNORM_X8_TYPELESS
Two-component 32-bit format with 24 bits for unsigned-normalized-integer data and 8 bits of unreferen...
Definition: GraphicsTypes.h:529
Diligent::TEX_FORMAT_RG8_TYPELESS
@ TEX_FORMAT_RG8_TYPELESS
Two-component 16-bit typeless format with 8-bit channels. D3D counterpart: DXGI_FORMAT_R8G8_TYPELES...
Definition: GraphicsTypes.h:538
Diligent::DeviceCaps::AdapterInfo
GraphicsAdapterInfo AdapterInfo
Adapter info, see Diligent::GraphicsAdapterInfo.
Definition: GraphicsTypes.h:1849
Diligent::TEX_FORMAT_RGBA16_TYPELESS
@ TEX_FORMAT_RGBA16_TYPELESS
Four-component 64-bit typeless format with 16-bit channels. D3D counterpart: DXGI_FORMAT_R16G16B16A...
Definition: GraphicsTypes.h:371
Diligent::TEX_FORMAT_R16_SINT
@ TEX_FORMAT_R16_SINT
Single-component 16-bit signed-integer format. D3D counterpart: DXGI_FORMAT_R16_SINT....
Definition: GraphicsTypes.h:586
Diligent::RenderDeviceD3DBase
Base implementation of a D3D render device.
Definition: RenderDeviceD3DBase.hpp:43
Diligent::TEX_FORMAT_RGBA16_SNORM
@ TEX_FORMAT_RGBA16_SNORM
Four-component 64-bit signed-normalized-integer format with 16-bit channels. D3D counterpart: DXGI_...
Definition: GraphicsTypes.h:392
Diligent::DeviceCaps::Features
DeviceFeatures Features
Device features. See Diligent::DeviceFeatures.
Definition: GraphicsTypes.h:1861
Diligent::TEX_FORMAT_RG32_SINT
@ TEX_FORMAT_RG32_SINT
Two-component 64-bit signed-integer format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32G3...
Definition: GraphicsTypes.h:412
Diligent::TEX_FORMAT_BC6H_SF16
@ TEX_FORMAT_BC6H_SF16
Three-channel signed half-precision floating-point format with 16 bits per each channel....
Definition: GraphicsTypes.h:829
Diligent::TEX_FORMAT_RGBA8_UINT
@ TEX_FORMAT_RGBA8_UINT
Four-component 32-bit unsigned-integer format with 8-bit channels. D3D counterpart: DXGI_FORMAT_R8G...
Definition: GraphicsTypes.h:461
Diligent::TEX_FORMAT_BC2_TYPELESS
@ TEX_FORMAT_BC2_TYPELESS
Four component typeless block-compression format with 1:4 compression ratio. D3D counterpart: DXGI_F...
Definition: GraphicsTypes.h:664
Diligent::RenderDeviceBase::m_DeviceCaps
DeviceCaps m_DeviceCaps
Definition: RenderDeviceBase.hpp:609
Diligent::TEX_FORMAT_R32_SINT
@ TEX_FORMAT_R32_SINT
Single-component 32-bit signed-integer format. D3D counterpart: DXGI_FORMAT_R32_SINT....
Definition: GraphicsTypes.h:517
Diligent::TEX_FORMAT_BC1_UNORM
@ TEX_FORMAT_BC1_UNORM
Four-component unsigned-normalized-integer block-compression format with 5 bits for R,...
Definition: GraphicsTypes.h:647
Diligent::TEX_FORMAT_RG16_SNORM
@ TEX_FORMAT_RG16_SNORM
Two-component 32-bit signed-normalized-integer format with 16-bit channels. D3D counterpart: DXGI_F...
Definition: GraphicsTypes.h:493
Diligent::TEX_FORMAT_RGBA8_SINT
@ TEX_FORMAT_RGBA8_SINT
Four-component 32-bit signed-integer format with 8-bit channels. D3D counterpart: DXGI_FORMAT_R8G8B...
Definition: GraphicsTypes.h:469
Diligent::TEX_FORMAT_D32_FLOAT
@ TEX_FORMAT_D32_FLOAT
Single-component 32-bit floating-point depth format. D3D counterpart: DXGI_FORMAT_D32_FLOAT....
Definition: GraphicsTypes.h:505
Diligent::TEX_FORMAT_R11G11B10_FLOAT
@ TEX_FORMAT_R11G11B10_FLOAT
Three-component 32-bit format encoding three partial precision channels using 11 bits for red and gre...
Definition: GraphicsTypes.h:445
Diligent::TEX_FORMAT_RGBA16_FLOAT
@ TEX_FORMAT_RGBA16_FLOAT
Four-component 64-bit half-precision floating-point format with 16-bit channels. D3D counterpart: D...
Definition: GraphicsTypes.h:375
Diligent::TEX_FORMAT_BC3_UNORM
@ TEX_FORMAT_BC3_UNORM
Four-component unsigned-normalized-integer block-compression format with 5 bits for R,...
Definition: GraphicsTypes.h:699
Diligent::TEX_FORMAT_RGB32_TYPELESS
@ TEX_FORMAT_RGB32_TYPELESS
Three-component 96-bit typeless format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32G32B32...
Definition: GraphicsTypes.h:352
Diligent::TEX_FORMAT_RG32_UINT
@ TEX_FORMAT_RG32_UINT
Two-component 64-bit unsigned-integer format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32...
Definition: GraphicsTypes.h:408
Diligent::TEX_FORMAT_BGRX8_UNORM
@ TEX_FORMAT_BGRX8_UNORM
Four-component 32-bit unsigned-normalized-integer format with 8 bits for each color channel and 8 bit...
Definition: GraphicsTypes.h:780
Diligent::TEX_FORMAT_RG8_UINT
@ TEX_FORMAT_RG8_UINT
Two-component 16-bit unsigned-integer format with 8-bit channels. D3D counterpart: DXGI_FORMAT_R8G8...
Definition: GraphicsTypes.h:546
Diligent::TEX_FORMAT_RGBA8_SNORM
@ TEX_FORMAT_RGBA8_SNORM
Four-component 32-bit signed-normalized-integer format with 8-bit channels. D3D counterpart: DXGI_F...
Definition: GraphicsTypes.h:465
Diligent::TEX_FORMAT_BGRA8_UNORM
@ TEX_FORMAT_BGRA8_UNORM
Four-component 32-bit unsigned-normalized-integer format with 8 bits for each channel....
Definition: GraphicsTypes.h:775
Diligent::TEX_FORMAT_A8_UNORM
@ TEX_FORMAT_A8_UNORM
Single-component 8-bit unsigned-normalized-integer format for alpha only. D3D counterpart: DXGI_FOR...
Definition: GraphicsTypes.h:611
Diligent::TEX_FORMAT_R16_SNORM
@ TEX_FORMAT_R16_SNORM
Single-component 16-bit signed-normalized-integer format. D3D counterpart: DXGI_FORMAT_R16_SNORM....
Definition: GraphicsTypes.h:582
Diligent::TEX_FORMAT_RGBA32_UINT
@ TEX_FORMAT_RGBA32_UINT
Four-component 128-bit unsigned-integer format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R...
Definition: GraphicsTypes.h:343
Diligent::DXGI_ADAPTER_DESC_To_GraphicsAdapterInfo
GraphicsAdapterInfo DXGI_ADAPTER_DESC_To_GraphicsAdapterInfo(const DXGI_ADAPTER_DESC1 &dxgiAdapterDesc)
Definition: DXGITypeConversions.cpp:457
Diligent::TEX_FORMAT_RG16_UINT
@ TEX_FORMAT_RG16_UINT
Two-component 32-bit unsigned-integer format with 16-bit channels. D3D counterpart: DXGI_FORMAT_R16...
Definition: GraphicsTypes.h:487
RenderDeviceBase.hpp
Diligent::TEX_FORMAT_BC3_UNORM_SRGB
@ TEX_FORMAT_BC3_UNORM_SRGB
Four-component unsigned-normalized-integer block-compression sRGB format with 5 bits for R,...
Definition: GraphicsTypes.h:708
Diligent::TEX_FORMAT_BGRA8_UNORM_SRGB
@ TEX_FORMAT_BGRA8_UNORM_SRGB
Four-component 32-bit unsigned-normalized sRGB format with 8 bits for each channel....
Definition: GraphicsTypes.h:795
Diligent::TEX_FORMAT_BC4_TYPELESS
@ TEX_FORMAT_BC4_TYPELESS
One-component typeless block-compression format with 1:2 compression ratio. D3D counterpart: DXGI_F...
Definition: GraphicsTypes.h:716
Diligent::TEX_FORMAT_R8_UINT
@ TEX_FORMAT_R8_UINT
Single-component 8-bit unsigned-integer format. D3D counterpart: DXGI_FORMAT_R8_UINT....
Definition: GraphicsTypes.h:598
Diligent::TEX_FORMAT_R8_SINT
@ TEX_FORMAT_R8_SINT
Single-component 8-bit signed-integer format. D3D counterpart: DXGI_FORMAT_R8_SINT....
Definition: GraphicsTypes.h:606
Diligent::TEX_FORMAT_BC1_UNORM_SRGB
@ TEX_FORMAT_BC1_UNORM_SRGB
Four-component unsigned-normalized-integer block-compression sRGB format with 5 bits for R,...
Definition: GraphicsTypes.h:656
Diligent::TEX_FORMAT_BC2_UNORM
@ TEX_FORMAT_BC2_UNORM
Four-component unsigned-normalized-integer block-compression format with 5 bits for R,...
Definition: GraphicsTypes.h:673
Diligent::TEX_FORMAT_R8_UNORM
@ TEX_FORMAT_R8_UNORM
Single-component 8-bit unsigned-normalized-integer format. D3D counterpart: DXGI_FORMAT_R8_UNORM....
Definition: GraphicsTypes.h:594
Diligent::TEX_FORMAT_B5G6R5_UNORM
@ TEX_FORMAT_B5G6R5_UNORM
Three-component 16-bit unsigned-normalized-integer format with 5 bits for blue, 6 bits for green,...
Definition: GraphicsTypes.h:765
Diligent::TEX_FORMAT_BC4_UNORM
@ TEX_FORMAT_BC4_UNORM
One-component unsigned-normalized-integer block-compression format with 8 bits for R channel....
Definition: GraphicsTypes.h:725
Diligent::TEX_FORMAT_BC7_UNORM_SRGB
@ TEX_FORMAT_BC7_UNORM_SRGB
Three-component block-compression unsigned-normalized-integer sRGB format with 4 to 7 bits per color ...
Definition: GraphicsTypes.h:853
Diligent::TEX_FORMAT_RGB10A2_UNORM
@ TEX_FORMAT_RGB10A2_UNORM
Four-component 32-bit unsigned-normalized-integer format with 10 bits for each color and 2 bits for a...
Definition: GraphicsTypes.h:437
Diligent::TEX_FORMAT_D32_FLOAT_S8X24_UINT
@ TEX_FORMAT_D32_FLOAT_S8X24_UINT
Two-component 64-bit format with 32-bit floating-point depth channel and 8-bit stencil channel....
Definition: GraphicsTypes.h:420
Diligent::TEX_FORMAT_R8_SNORM
@ TEX_FORMAT_R8_SNORM
Single-component 8-bit signed-normalized-integer format. D3D counterpart: DXGI_FORMAT_R8_SNORM....
Definition: GraphicsTypes.h:602
Diligent::TEX_FORMAT_RGBA32_FLOAT
@ TEX_FORMAT_RGBA32_FLOAT
Four-component 128-bit floating-point format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32...
Definition: GraphicsTypes.h:339
Diligent::TEX_FORMAT_R16_FLOAT
@ TEX_FORMAT_R16_FLOAT
Single-component 16-bit half-precisoin floating-point format. D3D counterpart: DXGI_FORMAT_R16_FLOA...
Definition: GraphicsTypes.h:562
Diligent::TEX_FORMAT_BGRA8_TYPELESS
@ TEX_FORMAT_BGRA8_TYPELESS
Four-component 32-bit typeless format with 8 bits for each channel. D3D counterpart: DXGI_FORMAT_B8...
Definition: GraphicsTypes.h:790
Diligent::TEX_FORMAT_RGB10A2_UINT
@ TEX_FORMAT_RGB10A2_UINT
Four-component 32-bit unsigned-integer format with 10 bits for each color and 2 bits for alpha channe...
Definition: GraphicsTypes.h:441
Diligent::TEX_FORMAT_RG16_UNORM
@ TEX_FORMAT_RG16_UNORM
Two-component 32-bit unsigned-normalized-integer format with 16-bit channels. D3D counterpart: DXGI...
Definition: GraphicsTypes.h:483
Diligent::TEX_FORMAT_RG32_TYPELESS
@ TEX_FORMAT_RG32_TYPELESS
Two-component 64-bit typeless format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32G32_TYPE...
Definition: GraphicsTypes.h:400
Diligent::TEX_FORMAT_RGB32_UINT
@ TEX_FORMAT_RGB32_UINT
Three-component 96-bit unsigned-integer format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R...
Definition: GraphicsTypes.h:362
Diligent::Uint32
uint32_t Uint32
32-bit unsigned integer
Definition: BasicTypes.h:51
Diligent::TEX_FORMAT_RGBA8_UNORM
@ TEX_FORMAT_RGBA8_UNORM
Four-component 32-bit unsigned-normalized-integer format with 8-bit channels. D3D counterpart: DXGI...
Definition: GraphicsTypes.h:453
Diligent::TEX_FORMAT_BC5_SNORM
@ TEX_FORMAT_BC5_SNORM
Two-component signed-normalized-integer block-compression format with 8 bits for R and 8 bits for G c...
Definition: GraphicsTypes.h:760
Diligent::TEX_FORMAT_RGB32_SINT
@ TEX_FORMAT_RGB32_SINT
Three-component 96-bit signed-integer format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32...
Definition: GraphicsTypes.h:367
Diligent::TEX_FORMAT_BC5_TYPELESS
@ TEX_FORMAT_BC5_TYPELESS
Two-component typeless block-compression format with 1:2 compression ratio. D3D counterpart: DXGI_F...
Definition: GraphicsTypes.h:742
Diligent::TEX_FORMAT_R1_UNORM
@ TEX_FORMAT_R1_UNORM
Single-component 1-bit format. D3D counterpart: DXGI_FORMAT_R1_UNORM.
Definition: GraphicsTypes.h:616
Diligent::TEX_FORMAT_RGB10A2_TYPELESS
@ TEX_FORMAT_RGB10A2_TYPELESS
Four-component 32-bit typeless format with 10 bits for RGB and 2 bits for alpha channel....
Definition: GraphicsTypes.h:433
Diligent::TEX_FORMAT_RG32_FLOAT
@ TEX_FORMAT_RG32_FLOAT
Two-component 64-bit floating-point format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32G3...
Definition: GraphicsTypes.h:404
Diligent::TEX_FORMAT_RG8_SNORM
@ TEX_FORMAT_RG8_SNORM
Two-component 16-bit signed-normalized-integer format with 8-bit channels. D3D counterpart: DXGI_FO...
Definition: GraphicsTypes.h:550
Diligent::TEX_FORMAT_X32_TYPELESS_G8X24_UINT
@ TEX_FORMAT_X32_TYPELESS_G8X24_UINT
Two-component 64-bit format with 32-bit typeless data and 8-bit G channel. D3D counterpart: DXGI_FO...
Definition: GraphicsTypes.h:429
Diligent::TEX_FORMAT_D16_UNORM
@ TEX_FORMAT_D16_UNORM
Single-component 16-bit unsigned-normalized-integer depth format. D3D counterpart: DXGI_FORMAT_D16_...
Definition: GraphicsTypes.h:566
Diligent::TEX_FORMAT_RGBA16_UNORM
@ TEX_FORMAT_RGBA16_UNORM
Four-component 64-bit unsigned-normalized-integer format with 16-bit channels. D3D counterpart: DXG...
Definition: GraphicsTypes.h:381
Diligent::TEX_FORMAT_BC7_TYPELESS
@ TEX_FORMAT_BC7_TYPELESS
Three-component typeless block-compression format. D3D counterpart: DXGI_FORMAT_BC7_TYPELESS....
Definition: GraphicsTypes.h:837
Diligent::TEX_FORMAT_R32_TYPELESS
@ TEX_FORMAT_R32_TYPELESS
Single-component 32-bit typeless format. D3D counterpart: DXGI_FORMAT_R32_TYPELESS....
Definition: GraphicsTypes.h:501
Diligent::IMemoryAllocator
Base interface for a raw memory allocator.
Definition: MemoryAllocator.h:41
Diligent::RenderDeviceD3DBase::ReadAdapterInfo
void ReadAdapterInfo(IDXGIAdapter1 *pdxgiAdapter)
Definition: RenderDeviceD3DBase.hpp:185
Diligent::TEX_FORMAT_R16_TYPELESS
@ TEX_FORMAT_R16_TYPELESS
Single-component 16-bit typeless format. D3D counterpart: DXGI_FORMAT_R16_TYPELESS....
Definition: GraphicsTypes.h:558
Diligent::TEX_FORMAT_X24_TYPELESS_G8_UINT
@ TEX_FORMAT_X24_TYPELESS_G8_UINT
Two-component 32-bit format with 24 bits of unreferenced data and 8 bits of unsigned-integer data....
Definition: GraphicsTypes.h:534
Diligent::TEX_FORMAT_RGBA16_SINT
@ TEX_FORMAT_RGBA16_SINT
Four-component 64-bit signed-integer format with 16-bit channels. D3D counterpart: DXGI_FORMAT_R16G...
Definition: GraphicsTypes.h:396
Diligent::TEX_FORMAT_R32G8X24_TYPELESS
@ TEX_FORMAT_R32G8X24_TYPELESS
Two-component 64-bit typeless format with 32-bits for R channel and 8 bits for G channel....
Definition: GraphicsTypes.h:416
Diligent::TEX_FORMAT_BC6H_TYPELESS
@ TEX_FORMAT_BC6H_TYPELESS
Three-component typeless block-compression format. D3D counterpart: DXGI_FORMAT_BC6H_TYPELESS....
Definition: GraphicsTypes.h:813
Diligent::TEX_FORMAT_BC1_TYPELESS
@ TEX_FORMAT_BC1_TYPELESS
Four-component typeless block-compression format with 1:8 compression ratio. D3D counterpart: DXGI_F...
Definition: GraphicsTypes.h:638
Diligent::TEX_FORMAT_G8R8_G8B8_UNORM
@ TEX_FORMAT_G8R8_G8B8_UNORM
Four-component unsigned-normalized integer format analogous to YUY2 encoding. D3D counterpart: DXGI...
Definition: GraphicsTypes.h:630
Diligent::TEX_FORMAT_R32_UINT
@ TEX_FORMAT_R32_UINT
Single-component 32-bit unsigned-integer format. D3D counterpart: DXGI_FORMAT_R32_UINT....
Definition: GraphicsTypes.h:513
Diligent::TEX_FORMAT_RGBA16_UINT
@ TEX_FORMAT_RGBA16_UINT
Four-component 64-bit unsigned-integer format with 16-bit channels. D3D counterpart: DXGI_FORMAT_R1...
Definition: GraphicsTypes.h:385
Diligent::TEX_FORMAT_R24G8_TYPELESS
@ TEX_FORMAT_R24G8_TYPELESS
Two-component 32-bit typeless format with 24 bits for R and 8 bits for G channel. D3D counterpart: ...
Definition: GraphicsTypes.h:521
Diligent::TEX_FORMAT_R32_FLOAT_X8X24_TYPELESS
@ TEX_FORMAT_R32_FLOAT_X8X24_TYPELESS
Two-component 64-bit format with 32-bit floating-point R channel and 8+24-bits of typeless data....
Definition: GraphicsTypes.h:424
Diligent::TEX_FORMAT_BC6H_UF16
@ TEX_FORMAT_BC6H_UF16
Three-component unsigned half-precision floating-point format with 16 bits for each channel....
Definition: GraphicsTypes.h:821
Diligent::TEX_FORMAT_BC4_SNORM
@ TEX_FORMAT_BC4_SNORM
One-component signed-normalized-integer block-compression format with 8 bits for R channel....
Definition: GraphicsTypes.h:734
Diligent::TEX_FORMAT_RGBA8_UNORM_SRGB
@ TEX_FORMAT_RGBA8_UNORM_SRGB
Four-component 32-bit unsigned-normalized-integer sRGB format with 8-bit channels....
Definition: GraphicsTypes.h:457
Diligent::TEX_FORMAT_R16_UNORM
@ TEX_FORMAT_R16_UNORM
Single-component 16-bit unsigned-normalized-integer format. D3D counterpart: DXGI_FORMAT_R16_UNORM....
Definition: GraphicsTypes.h:572
Diligent::TEX_FORMAT_BGRX8_UNORM_SRGB
@ TEX_FORMAT_BGRX8_UNORM_SRGB
Four-component 32-bit unsigned-normalized sRGB format with 8 bits for each color channel,...
Definition: GraphicsTypes.h:805
Diligent::TEX_FORMAT_RGB9E5_SHAREDEXP
@ TEX_FORMAT_RGB9E5_SHAREDEXP
Three partial-precision floating pointer numbers sharing single exponent encoded into a 32-bit value....
Definition: GraphicsTypes.h:620
Diligent::TEX_FORMAT_RG16_TYPELESS
@ TEX_FORMAT_RG16_TYPELESS
Two-component 32-bit typeless format with 16-bit channels. D3D counterpart: DXGI_FORMAT_R16G16_TYPE...
Definition: GraphicsTypes.h:473
Diligent::TEX_FORMAT_BC7_UNORM
@ TEX_FORMAT_BC7_UNORM
Three-component block-compression unsigned-normalized-integer format with 4 to 7 bits per color chann...
Definition: GraphicsTypes.h:845
Diligent::TEX_FORMAT_B5G5R5A1_UNORM
@ TEX_FORMAT_B5G5R5A1_UNORM
Four-component 16-bit unsigned-normalized-integer format with 5 bits for each color channel and 1-bit...
Definition: GraphicsTypes.h:770
Diligent::DEVICE_FEATURE_STATE_ENABLED
@ DEVICE_FEATURE_STATE_ENABLED
Device feature is enabled.
Definition: GraphicsTypes.h:1553
Diligent::TEX_FORMAT_R10G10B10_XR_BIAS_A2_UNORM
@ TEX_FORMAT_R10G10B10_XR_BIAS_A2_UNORM
Four-component 32-bit 2.8-biased fixed-point format with 10 bits for each color channel and 2-bit alp...
Definition: GraphicsTypes.h:785
Diligent::RenderDeviceD3DBase::RenderDeviceD3DBase
RenderDeviceD3DBase(IReferenceCounters *pRefCounters, IMemoryAllocator &RawMemAllocator, IEngineFactory *pEngineFactory, Uint32 NumDeferredContexts)
Definition: RenderDeviceD3DBase.hpp:46
Diligent::TEX_FORMAT_RG8_SINT
@ TEX_FORMAT_RG8_SINT
Two-component 16-bit signed-integer format with 8-bit channels. D3D counterpart: DXGI_FORMAT_R8G8_S...
Definition: GraphicsTypes.h:554
Diligent::TEX_FORMAT_RG8_B8G8_UNORM
@ TEX_FORMAT_RG8_B8G8_UNORM
Four-component unsigned-normalized integer format analogous to UYVY encoding. D3D counterpart: DXGI...
Definition: GraphicsTypes.h:625
Diligent::TEX_FORMAT_R16_UINT
@ TEX_FORMAT_R16_UINT
Single-component 16-bit unsigned-integer format. D3D counterpart: DXGI_FORMAT_R16_UINT....
Definition: GraphicsTypes.h:576
Diligent::TEX_FORMAT_RGBA32_SINT
@ TEX_FORMAT_RGBA32_SINT
Four-component 128-bit signed-integer format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32...
Definition: GraphicsTypes.h:347
Diligent::TEX_FORMAT_BC3_TYPELESS
@ TEX_FORMAT_BC3_TYPELESS
Four-component typeless block-compression format with 1:4 compression ratio. D3D counterpart: DXGI_F...
Definition: GraphicsTypes.h:690
Diligent::IEngineFactory
Engine factory base interface.
Definition: EngineFactory.h:60
Diligent::TEX_FORMAT_RGBA8_TYPELESS
@ TEX_FORMAT_RGBA8_TYPELESS
Four-component 32-bit typeless format with 8-bit channels. D3D counterpart: DXGI_FORMAT_R8G8B8A8_TY...
Definition: GraphicsTypes.h:449
Diligent::TEX_FORMAT_RG8_UNORM
@ TEX_FORMAT_RG8_UNORM
Two-component 16-bit unsigned-normalized-integer format with 8-bit channels. D3D counterpart: DXGI_...
Definition: GraphicsTypes.h:542
Diligent::TEX_FORMAT_BC2_UNORM_SRGB
@ TEX_FORMAT_BC2_UNORM_SRGB
Four-component signed-normalized-integer block-compression sRGB format with 5 bits for R,...
Definition: GraphicsTypes.h:682
Diligent::RenderDeviceBase
Base implementation of a render device.
Definition: RenderDeviceBase.hpp:185
Diligent
The library uses Direct3D-style math:
Definition: AdvancedMath.hpp:37
Diligent::TEX_FORMAT_BC5_UNORM
@ TEX_FORMAT_BC5_UNORM
Two-component unsigned-normalized-integer block-compression format with 8 bits for R and 8 bits for G...
Definition: GraphicsTypes.h:751