Diligent Engine API Reference: D:/GitHub/DiligentEngine/DiligentCore/Graphics/GraphicsEngineD3DBase/include/RenderDeviceD3DBase.h Source File

Diligent Engine API Reference

RenderDeviceD3DBase.h
1 /* Copyright 2015-2018 Egor Yusov
2 *
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
10 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
11 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF ANY PROPRIETARY RIGHTS.
12 *
13 * In no event and under no legal theory, whether in tort (including negligence),
14 * contract, or otherwise, unless required by applicable law (such as deliberate
15 * and grossly negligent acts) or agreed to in writing, shall any Contributor be
16 * liable for any damages, including any direct, indirect, special, incidental,
17 * or consequential damages of any character arising as a result of this License or
18 * out of the use or inability to use the software (including but not limited to damages
19 * for loss of goodwill, work stoppage, computer failure or malfunction, or any and
20 * all other commercial damages or losses), even if such Contributor has been advised
21 * of the possibility of such damages.
22 */
23
24 #pragma once
25
28
29 #include "RenderDeviceBase.h"
30
31 namespace Diligent
32 {
33
35
36 template<typename BaseInterface>
37 class RenderDeviceD3DBase : public RenderDeviceBase<BaseInterface>
38 {
39 public:
40 RenderDeviceD3DBase(IReferenceCounters *pRefCounters,
41 IMemoryAllocator &RawMemAllocator,
42 Uint32 NumDeferredContexts,
43 size_t TextureObjSize,
44 size_t TexViewObjSize,
45 size_t BufferObjSize,
46 size_t BuffViewObjSize,
47 size_t ShaderObjSize,
48 size_t SamplerObjSize,
49 size_t PSOSize,
50 size_t SRBSize) :
51 RenderDeviceBase<BaseInterface>(pRefCounters, RawMemAllocator, NumDeferredContexts, TextureObjSize, TexViewObjSize, BufferObjSize, BuffViewObjSize, ShaderObjSize, SamplerObjSize, PSOSize, SRBSize)
52 {
53 // Flag texture formats always supported in D3D11 and D3D12
54
55 #define FLAG_FORMAT(Fmt, IsSupported) m_TextureFormatsInfo[Fmt].Supported=IsSupported
56
57 FLAG_FORMAT(TEX_FORMAT_RGBA32_TYPELESS, true);
58 FLAG_FORMAT(TEX_FORMAT_RGBA32_FLOAT, true);
59 FLAG_FORMAT(TEX_FORMAT_RGBA32_UINT, true);
60 FLAG_FORMAT(TEX_FORMAT_RGBA32_SINT, true);
61 FLAG_FORMAT(TEX_FORMAT_RGB32_TYPELESS, true);
62 FLAG_FORMAT(TEX_FORMAT_RGB32_FLOAT, true);
63 FLAG_FORMAT(TEX_FORMAT_RGB32_UINT, true);
64 FLAG_FORMAT(TEX_FORMAT_RGB32_SINT, true);
65 FLAG_FORMAT(TEX_FORMAT_RGBA16_TYPELESS, true);
66 FLAG_FORMAT(TEX_FORMAT_RGBA16_FLOAT, true);
67 FLAG_FORMAT(TEX_FORMAT_RGBA16_UNORM, true);
68 FLAG_FORMAT(TEX_FORMAT_RGBA16_UINT, true);
69 FLAG_FORMAT(TEX_FORMAT_RGBA16_SNORM, true);
70 FLAG_FORMAT(TEX_FORMAT_RGBA16_SINT, true);
71 FLAG_FORMAT(TEX_FORMAT_RG32_TYPELESS, true);
72 FLAG_FORMAT(TEX_FORMAT_RG32_FLOAT, true);
73 FLAG_FORMAT(TEX_FORMAT_RG32_UINT, true);
74 FLAG_FORMAT(TEX_FORMAT_RG32_SINT, true);
75 FLAG_FORMAT(TEX_FORMAT_R32G8X24_TYPELESS, true);
76 FLAG_FORMAT(TEX_FORMAT_D32_FLOAT_S8X24_UINT, true);
77 FLAG_FORMAT(TEX_FORMAT_R32_FLOAT_X8X24_TYPELESS, true);
78 FLAG_FORMAT(TEX_FORMAT_X32_TYPELESS_G8X24_UINT, true);
79 FLAG_FORMAT(TEX_FORMAT_RGB10A2_TYPELESS, true);
80 FLAG_FORMAT(TEX_FORMAT_RGB10A2_UNORM, true);
81 FLAG_FORMAT(TEX_FORMAT_RGB10A2_UINT, true);
82 FLAG_FORMAT(TEX_FORMAT_R11G11B10_FLOAT, true);
83 FLAG_FORMAT(TEX_FORMAT_RGBA8_TYPELESS, true);
84 FLAG_FORMAT(TEX_FORMAT_RGBA8_UNORM, true);
85 FLAG_FORMAT(TEX_FORMAT_RGBA8_UNORM_SRGB, true);
86 FLAG_FORMAT(TEX_FORMAT_RGBA8_UINT, true);
87 FLAG_FORMAT(TEX_FORMAT_RGBA8_SNORM, true);
88 FLAG_FORMAT(TEX_FORMAT_RGBA8_SINT, true);
89 FLAG_FORMAT(TEX_FORMAT_RG16_TYPELESS, true);
90 FLAG_FORMAT(TEX_FORMAT_RG16_FLOAT, true);
91 FLAG_FORMAT(TEX_FORMAT_RG16_UNORM, true);
92 FLAG_FORMAT(TEX_FORMAT_RG16_UINT, true);
93 FLAG_FORMAT(TEX_FORMAT_RG16_SNORM, true);
94 FLAG_FORMAT(TEX_FORMAT_RG16_SINT, true);
95 FLAG_FORMAT(TEX_FORMAT_R32_TYPELESS, true);
96 FLAG_FORMAT(TEX_FORMAT_D32_FLOAT, true);
97 FLAG_FORMAT(TEX_FORMAT_R32_FLOAT, true);
98 FLAG_FORMAT(TEX_FORMAT_R32_UINT, true);
99 FLAG_FORMAT(TEX_FORMAT_R32_SINT, true);
100 FLAG_FORMAT(TEX_FORMAT_R24G8_TYPELESS, true);
101 FLAG_FORMAT(TEX_FORMAT_D24_UNORM_S8_UINT, true);
102 FLAG_FORMAT(TEX_FORMAT_R24_UNORM_X8_TYPELESS, true);
103 FLAG_FORMAT(TEX_FORMAT_X24_TYPELESS_G8_UINT, true);
104 FLAG_FORMAT(TEX_FORMAT_RG8_TYPELESS, true);
105 FLAG_FORMAT(TEX_FORMAT_RG8_UNORM, true);
106 FLAG_FORMAT(TEX_FORMAT_RG8_UINT, true);
107 FLAG_FORMAT(TEX_FORMAT_RG8_SNORM, true);
108 FLAG_FORMAT(TEX_FORMAT_RG8_SINT, true);
109 FLAG_FORMAT(TEX_FORMAT_R16_TYPELESS, true);
110 FLAG_FORMAT(TEX_FORMAT_R16_FLOAT, true);
111 FLAG_FORMAT(TEX_FORMAT_D16_UNORM, true);
112 FLAG_FORMAT(TEX_FORMAT_R16_UNORM, true);
113 FLAG_FORMAT(TEX_FORMAT_R16_UINT, true);
114 FLAG_FORMAT(TEX_FORMAT_R16_SNORM, true);
115 FLAG_FORMAT(TEX_FORMAT_R16_SINT, true);
116 FLAG_FORMAT(TEX_FORMAT_R8_TYPELESS, true);
117 FLAG_FORMAT(TEX_FORMAT_R8_UNORM, true);
118 FLAG_FORMAT(TEX_FORMAT_R8_UINT, true);
119 FLAG_FORMAT(TEX_FORMAT_R8_SNORM, true);
120 FLAG_FORMAT(TEX_FORMAT_R8_SINT, true);
121 FLAG_FORMAT(TEX_FORMAT_A8_UNORM, true);
122 FLAG_FORMAT(TEX_FORMAT_R1_UNORM, true);
123 FLAG_FORMAT(TEX_FORMAT_RGB9E5_SHAREDEXP, true);
124 FLAG_FORMAT(TEX_FORMAT_RG8_B8G8_UNORM, true);
125 FLAG_FORMAT(TEX_FORMAT_G8R8_G8B8_UNORM, true);
126 FLAG_FORMAT(TEX_FORMAT_BC1_TYPELESS, true);
127 FLAG_FORMAT(TEX_FORMAT_BC1_UNORM, true);
128 FLAG_FORMAT(TEX_FORMAT_BC1_UNORM_SRGB, true);
129 FLAG_FORMAT(TEX_FORMAT_BC2_TYPELESS, true);
130 FLAG_FORMAT(TEX_FORMAT_BC2_UNORM, true);
131 FLAG_FORMAT(TEX_FORMAT_BC2_UNORM_SRGB, true);
132 FLAG_FORMAT(TEX_FORMAT_BC3_TYPELESS, true);
133 FLAG_FORMAT(TEX_FORMAT_BC3_UNORM, true);
134 FLAG_FORMAT(TEX_FORMAT_BC3_UNORM_SRGB, true);
135 FLAG_FORMAT(TEX_FORMAT_BC4_TYPELESS, true);
136 FLAG_FORMAT(TEX_FORMAT_BC4_UNORM, true);
137 FLAG_FORMAT(TEX_FORMAT_BC4_SNORM, true);
138 FLAG_FORMAT(TEX_FORMAT_BC5_TYPELESS, true);
139 FLAG_FORMAT(TEX_FORMAT_BC5_UNORM, true);
140 FLAG_FORMAT(TEX_FORMAT_BC5_SNORM, true);
141 FLAG_FORMAT(TEX_FORMAT_B5G6R5_UNORM, true);
142 FLAG_FORMAT(TEX_FORMAT_B5G5R5A1_UNORM, true);
143 FLAG_FORMAT(TEX_FORMAT_BGRA8_UNORM, true);
144 FLAG_FORMAT(TEX_FORMAT_BGRX8_UNORM, true);
145 FLAG_FORMAT(TEX_FORMAT_R10G10B10_XR_BIAS_A2_UNORM, true);
146 FLAG_FORMAT(TEX_FORMAT_BGRA8_TYPELESS, true);
147 FLAG_FORMAT(TEX_FORMAT_BGRA8_UNORM_SRGB, true);
148 FLAG_FORMAT(TEX_FORMAT_BGRX8_TYPELESS, true);
149 FLAG_FORMAT(TEX_FORMAT_BGRX8_UNORM_SRGB, true);
150 FLAG_FORMAT(TEX_FORMAT_BC6H_TYPELESS, true);
151 FLAG_FORMAT(TEX_FORMAT_BC6H_UF16, true);
152 FLAG_FORMAT(TEX_FORMAT_BC6H_SF16, true);
153 FLAG_FORMAT(TEX_FORMAT_BC7_TYPELESS, true);
154 FLAG_FORMAT(TEX_FORMAT_BC7_UNORM, true);
155 FLAG_FORMAT(TEX_FORMAT_BC7_UNORM_SRGB, true);
156 #undef FLAG_FORMAT
157 }
158 };
159
160 }
Diligent::TEX_FORMAT_BC5_TYPELESS
Two-component typeless block-compression format with 1:2 compression ratio. D3D counterpart: DXGI_F...
Definition: GraphicsTypes.h:658
Diligent::TEX_FORMAT_RGBA16_UINT
Four-component 64-bit unsigned-integer format with 16-bit channels. D3D counterpart: DXGI_FORMAT_R1...
Definition: GraphicsTypes.h:301
Diligent::TEX_FORMAT_BC3_UNORM
Four-component unsigned-normalized-integer block-compression format with 5 bits for R...
Definition: GraphicsTypes.h:615
Diligent::TEX_FORMAT_RG32_UINT
Two-component 64-bit unsigned-integer format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32...
Definition: GraphicsTypes.h:324
Diligent::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:437
Diligent::TEX_FORMAT_RGBA32_UINT
Four-component 128-bit unsigned-integer format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R...
Definition: GraphicsTypes.h:259
Diligent::TEX_FORMAT_R8_UNORM
Single-component 8-bit unsigned-normalized-integer format. D3D counterpart: DXGI_FORMAT_R8_UNORM. OpenGL counterpart: GL_R8.
Definition: GraphicsTypes.h:510
Diligent::TEX_FORMAT_RG16_SNORM
Two-component 32-bit signed-normalized-integer format with 16-bit channels. D3D counterpart: DXGI_F...
Definition: GraphicsTypes.h:409
Diligent::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:667
Diligent::TEX_FORMAT_BC1_UNORM
Four-component unsigned-normalized-integer block-compression format with 5 bits for R...
Definition: GraphicsTypes.h:563
Diligent::TEX_FORMAT_R32_SINT
Single-component 32-bit signed-integer format. D3D counterpart: DXGI_FORMAT_R32_SINT. OpenGL counterpart: GL_R32I.
Definition: GraphicsTypes.h:433
Diligent::TEX_FORMAT_BGRX8_UNORM_SRGB
Four-component 32-bit unsigned-normalized sRGB format with 8 bits for each color channel, and 8 bits are unused. D3D counterpart: DXGI_FORMAT_B8G8R8X8_UNORM_SRGB.
Definition: GraphicsTypes.h:721
Diligent::TEX_FORMAT_R32_FLOAT
Single-component 32-bit floating-point format. D3D counterpart: DXGI_FORMAT_R32_FLOAT. OpenGL counterpart: GL_R32F.
Definition: GraphicsTypes.h:425
Diligent::TEX_FORMAT_BC3_TYPELESS
Four-component typeless block-compression format with 1:4 compression ratio. D3D counterpart: DXGI_F...
Definition: GraphicsTypes.h:606
Diligent::TEX_FORMAT_RG8_SINT
Two-component 16-bit signed-integer format with 8-bit channels. D3D counterpart: DXGI_FORMAT_R8G8_S...
Definition: GraphicsTypes.h:470
Diligent::TEX_FORMAT_BC2_TYPELESS
Four component typeless block-compression format with 1:4 compression ratio. D3D counterpart: DXGI_F...
Definition: GraphicsTypes.h:580
Diligent::RenderDeviceD3DBase
Base implementation of a D3D render device.
Definition: RenderDeviceD3DBase.h:37
Diligent
Graphics engine namespace.
Definition: AdaptiveFixedBlockAllocator.h:30
Diligent::TEX_FORMAT_BGRA8_UNORM
Four-component 32-bit unsigned-normalized-integer format with 8 bits for each channel. D3D counterpart: DXGI_FORMAT_B8G8R8A8_UNORM.
Definition: GraphicsTypes.h:691
Diligent::TEX_FORMAT_RG8_UINT
Two-component 16-bit unsigned-integer format with 8-bit channels. D3D counterpart: DXGI_FORMAT_R8G8...
Definition: GraphicsTypes.h:462
Diligent::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:450
Diligent::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:686
Diligent::TEX_FORMAT_RGB32_TYPELESS
Three-component 96-bit typeless format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32G32B32...
Definition: GraphicsTypes.h:268
Diligent::TEX_FORMAT_RG8_UNORM
Two-component 16-bit unsigned-normalized-integer format with 8-bit channels. D3D counterpart: DXGI_...
Definition: GraphicsTypes.h:458
Diligent::TEX_FORMAT_RGBA16_UNORM
Four-component 64-bit unsigned-normalized-integer format with 16-bit channels. D3D counterpart: DXG...
Definition: GraphicsTypes.h:297
Diligent::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:357
Diligent::TEX_FORMAT_R32_UINT
Single-component 32-bit unsigned-integer format. D3D counterpart: DXGI_FORMAT_R32_UINT. OpenGL counterpart: GL_R32UI.
Definition: GraphicsTypes.h:429
Diligent::TEX_FORMAT_R16_UINT
Single-component 16-bit unsigned-integer format. D3D counterpart: DXGI_FORMAT_R16_UINT. OpenGL counterpart: GL_R16UI.
Definition: GraphicsTypes.h:492
Diligent::TEX_FORMAT_RGBA16_TYPELESS
Four-component 64-bit typeless format with 16-bit channels. D3D counterpart: DXGI_FORMAT_R16G16B16A...
Definition: GraphicsTypes.h:287
Diligent::TEX_FORMAT_BC4_UNORM
One-component unsigned-normalized-integer block-compression format with 8 bits for R channel...
Definition: GraphicsTypes.h:641
Diligent::TEX_FORMAT_R16_UNORM
Single-component 16-bit unsigned-normalized-integer format. D3D counterpart: DXGI_FORMAT_R16_UNORM...
Definition: GraphicsTypes.h:488
Diligent::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:353
Diligent::TEX_FORMAT_RG16_FLOAT
Two-component 32-bit half-precision floating-point format with 16-bit channels. D3D counterpart: DX...
Definition: GraphicsTypes.h:393
Diligent::TEX_FORMAT_D32_FLOAT
Single-component 32-bit floating-point depth format. D3D counterpart: DXGI_FORMAT_D32_FLOAT. OpenGL counterpart: GL_DEPTH_COMPONENT32F.
Definition: GraphicsTypes.h:421
Diligent::TEX_FORMAT_D16_UNORM
Single-component 16-bit unsigned-normalized-integer depth format. D3D counterpart: DXGI_FORMAT_D16_...
Definition: GraphicsTypes.h:482
Diligent::TEX_FORMAT_RGBA8_SNORM
Four-component 32-bit signed-normalized-integer format with 8-bit channels. D3D counterpart: DXGI_F...
Definition: GraphicsTypes.h:381
Diligent::TEX_FORMAT_A8_UNORM
Single-component 8-bit unsigned-normalized-integer format for alpha only. D3D counterpart: DXGI_FOR...
Definition: GraphicsTypes.h:527
Diligent::TEX_FORMAT_B5G6R5_UNORM
Three-component 16-bit unsigned-normalized-integer format with 5 bits for blue, 6 bits for green...
Definition: GraphicsTypes.h:681
Diligent::TEX_FORMAT_BC6H_TYPELESS
Three-component typeless block-compression format. D3D counterpart: DXGI_FORMAT_BC6H_TYPELESS. OpenGL does not have direct counterpart, GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT is used. OpenGL: GL_ARB_texture_compression_bptc extension is required. Not supported in at least OpenGLES3.1.
Definition: GraphicsTypes.h:729
Diligent::TEX_FORMAT_RGBA16_SINT
Four-component 64-bit signed-integer format with 16-bit channels. D3D counterpart: DXGI_FORMAT_R16G...
Definition: GraphicsTypes.h:312
Diligent::TEX_FORMAT_R1_UNORM
Single-component 1-bit format. D3D counterpart: DXGI_FORMAT_R1_UNORM.
Definition: GraphicsTypes.h:532
Diligent::TEX_FORMAT_BC4_TYPELESS
One-component typeless block-compression format with 1:2 compression ratio. D3D counterpart: DXGI_F...
Definition: GraphicsTypes.h:632
Diligent::TEX_FORMAT_BC6H_UF16
Three-component unsigned half-precision floating-point format with 16 bits for each channel...
Definition: GraphicsTypes.h:737
Diligent::TEX_FORMAT_RG32_SINT
Two-component 64-bit signed-integer format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32G3...
Definition: GraphicsTypes.h:328
Diligent::TEX_FORMAT_RG8_TYPELESS
Two-component 16-bit typeless format with 8-bit channels. D3D counterpart: DXGI_FORMAT_R8G8_TYPELES...
Definition: GraphicsTypes.h:454
Diligent::TEX_FORMAT_RGBA8_UNORM
Four-component 32-bit unsigned-normalized-integer format with 8-bit channels. D3D counterpart: DXGI...
Definition: GraphicsTypes.h:369
Diligent::TEX_FORMAT_RG32_TYPELESS
Two-component 64-bit typeless format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32G32_TYPE...
Definition: GraphicsTypes.h:316
Diligent::TEX_FORMAT_R11G11B10_FLOAT
Three-component 32-bit format encoding three partial precision channels using 11 bits for red and gre...
Definition: GraphicsTypes.h:361
Diligent::TEX_FORMAT_RG8_B8G8_UNORM
Four-component unsigned-normalized integer format analogous to UYVY encoding. D3D counterpart: DXGI...
Definition: GraphicsTypes.h:541
Diligent::IMemoryAllocator
Base interface for a raw memory allocator.
Definition: MemoryAllocator.h:35
Diligent::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:696
Diligent::TEX_FORMAT_R16_FLOAT
Single-component 16-bit half-precisoin floating-point format. D3D counterpart: DXGI_FORMAT_R16_FLOA...
Definition: GraphicsTypes.h:478
Diligent::TEX_FORMAT_RGB32_FLOAT
Three-component 96-bit floating-point format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32...
Definition: GraphicsTypes.h:273
Diligent::TEX_FORMAT_BC2_UNORM
Four-component unsigned-normalized-integer block-compression format with 5 bits for R...
Definition: GraphicsTypes.h:589
Diligent::TEX_FORMAT_RGBA8_SINT
Four-component 32-bit signed-integer format with 8-bit channels. D3D counterpart: DXGI_FORMAT_R8G8B...
Definition: GraphicsTypes.h:385
Diligent::TEX_FORMAT_BC1_TYPELESS
Four-component typeless block-compression format with 1:8 compression ratio. D3D counterpart: DXGI_F...
Definition: GraphicsTypes.h:554
Diligent::TEX_FORMAT_BC1_UNORM_SRGB
Four-component unsigned-normalized-integer block-compression sRGB format with 5 bits for R...
Definition: GraphicsTypes.h:572
Diligent::RenderDeviceBase
Base implementation of a render device.
Definition: DeviceObjectBase.h:36
Diligent::TEX_FORMAT_R16_SINT
Single-component 16-bit signed-integer format. D3D counterpart: DXGI_FORMAT_R16_SINT. OpenGL counterpart: GL_R16I.
Definition: GraphicsTypes.h:502
Diligent::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:445
Diligent::TEX_FORMAT_RG32_FLOAT
Two-component 64-bit floating-point format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32G3...
Definition: GraphicsTypes.h:320
Diligent::TEX_FORMAT_RG16_SINT
Two-component 32-bit signed-integer format with 16-bit channels. D3D counterpart: DXGI_FORMAT_R16G1...
Definition: GraphicsTypes.h:413
Diligent::TEX_FORMAT_RGBA16_SNORM
Four-component 64-bit signed-normalized-integer format with 16-bit channels. D3D counterpart: DXGI_...
Definition: GraphicsTypes.h:308
Diligent::TEX_FORMAT_BC3_UNORM_SRGB
Four-component unsigned-normalized-integer block-compression sRGB format with 5 bits for R...
Definition: GraphicsTypes.h:624
Diligent::TEX_FORMAT_BC4_SNORM
One-component signed-normalized-integer block-compression format with 8 bits for R channel...
Definition: GraphicsTypes.h:650
Diligent::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:676
Diligent::TEX_FORMAT_RGB9E5_SHAREDEXP
Three partial-precision floating pointer numbers sharing single exponent encoded into a 32-bit value...
Definition: GraphicsTypes.h:536
Diligent::TEX_FORMAT_RG16_UINT
Two-component 32-bit unsigned-integer format with 16-bit channels. D3D counterpart: DXGI_FORMAT_R16...
Definition: GraphicsTypes.h:403
Diligent::IReferenceCounters
Base interface for a reference counter object that stores the number of strong and weak references an...
Definition: ReferenceCounters.h:37
Diligent::TEX_FORMAT_G8R8_G8B8_UNORM
Four-component unsigned-normalized integer format analogous to YUY2 encoding. D3D counterpart: DXGI...
Definition: GraphicsTypes.h:546
Diligent::TEX_FORMAT_RGB32_SINT
Three-component 96-bit signed-integer format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32...
Definition: GraphicsTypes.h:283
Diligent::TEX_FORMAT_BC7_TYPELESS
Three-component typeless block-compression format. D3D counterpart: DXGI_FORMAT_BC7_TYPELESS. OpenGL does not have direct counterpart, GL_COMPRESSED_RGBA_BPTC_UNORM is used. OpenGL: GL_ARB_texture_compression_bptc extension is required. Not supported in at least OpenGLES3.1.
Definition: GraphicsTypes.h:753
Diligent::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:336
Diligent::TEX_FORMAT_RGBA8_UINT
Four-component 32-bit unsigned-integer format with 8-bit channels. D3D counterpart: DXGI_FORMAT_R8G...
Definition: GraphicsTypes.h:377
Diligent::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:716
Diligent::TEX_FORMAT_BC6H_SF16
Three-channel signed half-precision floating-point format with 16 bits per each channel. D3D counterpart: DXGI_FORMAT_BC6H_SF16. OpenGL counterpart: GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT. OpenGL: GL_ARB_texture_compression_bptc extension is required. Not supported in at least OpenGLES3.1.
Definition: GraphicsTypes.h:745
Diligent::TEX_FORMAT_R8_SNORM
Single-component 8-bit signed-normalized-integer format. D3D counterpart: DXGI_FORMAT_R8_SNORM. OpenGL counterpart: GL_R8_SNORM.
Definition: GraphicsTypes.h:518
Diligent::TEX_FORMAT_BC7_UNORM
Three-component block-compression unsigned-normalized-integer format with 4 to 7 bits per color chann...
Definition: GraphicsTypes.h:761
Diligent::Uint32
uint32_t Uint32
32-bit unsigned integer
Definition: BasicTypes.h:39
Diligent::TEX_FORMAT_RGBA8_UNORM_SRGB
Four-component 32-bit unsigned-normalized-integer sRGB format with 8-bit channels. D3D counterpart: DXGI_FORMAT_R8G8B8A8_UNORM_SRGB. OpenGL counterpart: GL_SRGB8_ALPHA8.
Definition: GraphicsTypes.h:373
Diligent::TEX_FORMAT_R8_TYPELESS
Single-component 8-bit typeless format. D3D counterpart: DXGI_FORMAT_R8_TYPELESS. OpenGL does not have direct counterpart, GL_R8 is used.
Definition: GraphicsTypes.h:506
Diligent::TEX_FORMAT_RGB32_UINT
Three-component 96-bit unsigned-integer format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R...
Definition: GraphicsTypes.h:278
Diligent::TEX_FORMAT_RG16_TYPELESS
Two-component 32-bit typeless format with 16-bit channels. D3D counterpart: DXGI_FORMAT_R16G16_TYPE...
Definition: GraphicsTypes.h:389
Diligent::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:345
Diligent::TEX_FORMAT_BC7_UNORM_SRGB
Three-component block-compression unsigned-normalized-integer sRGB format with 4 to 7 bits per color ...
Definition: GraphicsTypes.h:769
Diligent::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:441
Diligent::TEX_FORMAT_RGB10A2_TYPELESS
Four-component 32-bit typeless format with 10 bits for RGB and 2 bits for alpha channel. D3D counterpart: DXGI_FORMAT_R10G10B10A2_TYPELESS. OpenGL does not have direct counterpart, GL_RGB10_A2 is used.
Definition: GraphicsTypes.h:349
Diligent::TEX_FORMAT_RGBA32_FLOAT
Four-component 128-bit floating-point format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32...
Definition: GraphicsTypes.h:255
Diligent::TEX_FORMAT_RGBA32_SINT
Four-component 128-bit signed-integer format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32...
Definition: GraphicsTypes.h:263
Diligent::TEX_FORMAT_BGRA8_UNORM_SRGB
Four-component 32-bit unsigned-normalized sRGB format with 8 bits for each channel. D3D counterpart: DXGI_FORMAT_B8G8R8A8_UNORM_SRGB.
Definition: GraphicsTypes.h:711
Diligent::TEX_FORMAT_RG8_SNORM
Two-component 16-bit signed-normalized-integer format with 8-bit channels. D3D counterpart: DXGI_FO...
Definition: GraphicsTypes.h:466
Diligent::TEX_FORMAT_BC2_UNORM_SRGB
Four-component signed-normalized-integer block-compression sRGB format with 5 bits for R...
Definition: GraphicsTypes.h:598
Diligent::TEX_FORMAT_R32G8X24_TYPELESS
Two-component 64-bit typeless format with 32-bits for R channel and 8 bits for G channel. D3D counterpart: DXGI_FORMAT_R32G8X24_TYPELESS. OpenGL does not have direct counterpart, GL_DEPTH32F_STENCIL8 is used.
Definition: GraphicsTypes.h:332
Diligent::TEX_FORMAT_RG16_UNORM
Two-component 32-bit unsigned-normalized-integer format with 16-bit channels. D3D counterpart: DXGI...
Definition: GraphicsTypes.h:399
Diligent::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:340
Diligent::TEX_FORMAT_RGBA8_TYPELESS
Four-component 32-bit typeless format with 8-bit channels. D3D counterpart: DXGI_FORMAT_R8G8B8A8_TY...
Definition: GraphicsTypes.h:365
Diligent::TEX_FORMAT_RGBA16_FLOAT
Four-component 64-bit half-precision floating-point format with 16-bit channels. D3D counterpart: D...
Definition: GraphicsTypes.h:291
Diligent::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:701
Diligent::TEX_FORMAT_RGBA32_TYPELESS
Four-component 128-bit typeless format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32G32B32...
Definition: GraphicsTypes.h:251
Diligent::TEX_FORMAT_R8_UINT
Single-component 8-bit unsigned-integer format. D3D counterpart: DXGI_FORMAT_R8_UINT. OpenGL counterpart: GL_R8UI.
Definition: GraphicsTypes.h:514
Diligent::TEX_FORMAT_R8_SINT
Single-component 8-bit signed-integer format. D3D counterpart: DXGI_FORMAT_R8_SINT. OpenGL counterpart: GL_R8I.
Definition: GraphicsTypes.h:522
Diligent::TEX_FORMAT_BGRA8_TYPELESS
Four-component 32-bit typeless format with 8 bits for each channel. D3D counterpart: DXGI_FORMAT_B8...
Definition: GraphicsTypes.h:706
Diligent::TEX_FORMAT_R16_SNORM
Single-component 16-bit signed-normalized-integer format. D3D counterpart: DXGI_FORMAT_R16_SNORM. OpenGL counterpart: GL_R16_SNORM. OpenGLES: GL_EXT_texture_norm16 extension is required.
Definition: GraphicsTypes.h:498
Diligent::TEX_FORMAT_R16_TYPELESS
Single-component 16-bit typeless format. D3D counterpart: DXGI_FORMAT_R16_TYPELESS. OpenGL does not have direct counterpart, GL_R16F is used.
Definition: GraphicsTypes.h:474
Diligent::TEX_FORMAT_R32_TYPELESS
Single-component 32-bit typeless format. D3D counterpart: DXGI_FORMAT_R32_TYPELESS. OpenGL does not have direct counterpart, GL_R32F is used.
Definition: GraphicsTypes.h:417