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:
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 }
Two-component typeless block-compression format with 1:2 compression ratio. D3D counterpart: DXGI_F...
Definition: GraphicsTypes.h:658
Four-component 64-bit unsigned-integer format with 16-bit channels. D3D counterpart: DXGI_FORMAT_R1...
Definition: GraphicsTypes.h:301
Four-component unsigned-normalized-integer block-compression format with 5 bits for R...
Definition: GraphicsTypes.h:615
Two-component 64-bit unsigned-integer format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32...
Definition: GraphicsTypes.h:324
Two-component 32-bit typeless format with 24 bits for R and 8 bits for G channel. D3D counterpart: ...
Definition: GraphicsTypes.h:437
Four-component 128-bit unsigned-integer format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R...
Definition: GraphicsTypes.h:259
Single-component 8-bit unsigned-normalized-integer format. D3D counterpart: DXGI_FORMAT_R8_UNORM. OpenGL counterpart: GL_R8.
Definition: GraphicsTypes.h:510
Two-component 32-bit signed-normalized-integer format with 16-bit channels. D3D counterpart: DXGI_F...
Definition: GraphicsTypes.h:409
Two-component unsigned-normalized-integer block-compression format with 8 bits for R and 8 bits for G...
Definition: GraphicsTypes.h:667
Four-component unsigned-normalized-integer block-compression format with 5 bits for R...
Definition: GraphicsTypes.h:563
Single-component 32-bit signed-integer format. D3D counterpart: DXGI_FORMAT_R32_SINT. OpenGL counterpart: GL_R32I.
Definition: GraphicsTypes.h:433
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
Single-component 32-bit floating-point format. D3D counterpart: DXGI_FORMAT_R32_FLOAT. OpenGL counterpart: GL_R32F.
Definition: GraphicsTypes.h:425
Four-component typeless block-compression format with 1:4 compression ratio. D3D counterpart: DXGI_F...
Definition: GraphicsTypes.h:606
Two-component 16-bit signed-integer format with 8-bit channels. D3D counterpart: DXGI_FORMAT_R8G8_S...
Definition: GraphicsTypes.h:470
Four component typeless block-compression format with 1:4 compression ratio. D3D counterpart: DXGI_F...
Definition: GraphicsTypes.h:580
Base implementation of a D3D render device.
Definition: RenderDeviceD3DBase.h:37
Graphics engine namespace.
Definition: AdaptiveFixedBlockAllocator.h:30
Four-component 32-bit unsigned-normalized-integer format with 8 bits for each channel. D3D counterpart: DXGI_FORMAT_B8G8R8A8_UNORM.
Definition: GraphicsTypes.h:691
Two-component 16-bit unsigned-integer format with 8-bit channels. D3D counterpart: DXGI_FORMAT_R8G8...
Definition: GraphicsTypes.h:462
Two-component 32-bit format with 24 bits of unreferenced data and 8 bits of unsigned-integer data...
Definition: GraphicsTypes.h:450
Four-component 16-bit unsigned-normalized-integer format with 5 bits for each color channel and 1-bit...
Definition: GraphicsTypes.h:686
Three-component 96-bit typeless format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32G32B32...
Definition: GraphicsTypes.h:268
Two-component 16-bit unsigned-normalized-integer format with 8-bit channels. D3D counterpart: DXGI_...
Definition: GraphicsTypes.h:458
Four-component 64-bit unsigned-normalized-integer format with 16-bit channels. D3D counterpart: DXG...
Definition: GraphicsTypes.h:297
Four-component 32-bit unsigned-integer format with 10 bits for each color and 2 bits for alpha channe...
Definition: GraphicsTypes.h:357
Single-component 32-bit unsigned-integer format. D3D counterpart: DXGI_FORMAT_R32_UINT. OpenGL counterpart: GL_R32UI.
Definition: GraphicsTypes.h:429
Single-component 16-bit unsigned-integer format. D3D counterpart: DXGI_FORMAT_R16_UINT. OpenGL counterpart: GL_R16UI.
Definition: GraphicsTypes.h:492
Four-component 64-bit typeless format with 16-bit channels. D3D counterpart: DXGI_FORMAT_R16G16B16A...
Definition: GraphicsTypes.h:287
One-component unsigned-normalized-integer block-compression format with 8 bits for R channel...
Definition: GraphicsTypes.h:641
Single-component 16-bit unsigned-normalized-integer format. D3D counterpart: DXGI_FORMAT_R16_UNORM...
Definition: GraphicsTypes.h:488
Four-component 32-bit unsigned-normalized-integer format with 10 bits for each color and 2 bits for a...
Definition: GraphicsTypes.h:353
Two-component 32-bit half-precision floating-point format with 16-bit channels. D3D counterpart: DX...
Definition: GraphicsTypes.h:393
Single-component 32-bit floating-point depth format. D3D counterpart: DXGI_FORMAT_D32_FLOAT. OpenGL counterpart: GL_DEPTH_COMPONENT32F.
Definition: GraphicsTypes.h:421
Single-component 16-bit unsigned-normalized-integer depth format. D3D counterpart: DXGI_FORMAT_D16_...
Definition: GraphicsTypes.h:482
Four-component 32-bit signed-normalized-integer format with 8-bit channels. D3D counterpart: DXGI_F...
Definition: GraphicsTypes.h:381
Single-component 8-bit unsigned-normalized-integer format for alpha only. D3D counterpart: DXGI_FOR...
Definition: GraphicsTypes.h:527
Three-component 16-bit unsigned-normalized-integer format with 5 bits for blue, 6 bits for green...
Definition: GraphicsTypes.h:681
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
Four-component 64-bit signed-integer format with 16-bit channels. D3D counterpart: DXGI_FORMAT_R16G...
Definition: GraphicsTypes.h:312
Single-component 1-bit format. D3D counterpart: DXGI_FORMAT_R1_UNORM.
Definition: GraphicsTypes.h:532
One-component typeless block-compression format with 1:2 compression ratio. D3D counterpart: DXGI_F...
Definition: GraphicsTypes.h:632
Three-component unsigned half-precision floating-point format with 16 bits for each channel...
Definition: GraphicsTypes.h:737
Two-component 64-bit signed-integer format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32G3...
Definition: GraphicsTypes.h:328
Two-component 16-bit typeless format with 8-bit channels. D3D counterpart: DXGI_FORMAT_R8G8_TYPELES...
Definition: GraphicsTypes.h:454
Four-component 32-bit unsigned-normalized-integer format with 8-bit channels. D3D counterpart: DXGI...
Definition: GraphicsTypes.h:369
Two-component 64-bit typeless format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32G32_TYPE...
Definition: GraphicsTypes.h:316
Three-component 32-bit format encoding three partial precision channels using 11 bits for red and gre...
Definition: GraphicsTypes.h:361
Four-component unsigned-normalized integer format analogous to UYVY encoding. D3D counterpart: DXGI...
Definition: GraphicsTypes.h:541
Base interface for a raw memory allocator.
Definition: MemoryAllocator.h:35
Four-component 32-bit unsigned-normalized-integer format with 8 bits for each color channel and 8 bit...
Definition: GraphicsTypes.h:696
Single-component 16-bit half-precisoin floating-point format. D3D counterpart: DXGI_FORMAT_R16_FLOA...
Definition: GraphicsTypes.h:478
Three-component 96-bit floating-point format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32...
Definition: GraphicsTypes.h:273
Four-component unsigned-normalized-integer block-compression format with 5 bits for R...
Definition: GraphicsTypes.h:589
Four-component 32-bit signed-integer format with 8-bit channels. D3D counterpart: DXGI_FORMAT_R8G8B...
Definition: GraphicsTypes.h:385
Four-component typeless block-compression format with 1:8 compression ratio. D3D counterpart: DXGI_F...
Definition: GraphicsTypes.h:554
Four-component unsigned-normalized-integer block-compression sRGB format with 5 bits for R...
Definition: GraphicsTypes.h:572
Base implementation of a render device.
Definition: DeviceObjectBase.h:36
Single-component 16-bit signed-integer format. D3D counterpart: DXGI_FORMAT_R16_SINT. OpenGL counterpart: GL_R16I.
Definition: GraphicsTypes.h:502
Two-component 32-bit format with 24 bits for unsigned-normalized-integer data and 8 bits of unreferen...
Definition: GraphicsTypes.h:445
Two-component 64-bit floating-point format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32G3...
Definition: GraphicsTypes.h:320
Two-component 32-bit signed-integer format with 16-bit channels. D3D counterpart: DXGI_FORMAT_R16G1...
Definition: GraphicsTypes.h:413
Four-component 64-bit signed-normalized-integer format with 16-bit channels. D3D counterpart: DXGI_...
Definition: GraphicsTypes.h:308
Four-component unsigned-normalized-integer block-compression sRGB format with 5 bits for R...
Definition: GraphicsTypes.h:624
One-component signed-normalized-integer block-compression format with 8 bits for R channel...
Definition: GraphicsTypes.h:650
Two-component signed-normalized-integer block-compression format with 8 bits for R and 8 bits for G c...
Definition: GraphicsTypes.h:676
Three partial-precision floating pointer numbers sharing single exponent encoded into a 32-bit value...
Definition: GraphicsTypes.h:536
Two-component 32-bit unsigned-integer format with 16-bit channels. D3D counterpart: DXGI_FORMAT_R16...
Definition: GraphicsTypes.h:403
Base interface for a reference counter object that stores the number of strong and weak references an...
Definition: ReferenceCounters.h:37
Four-component unsigned-normalized integer format analogous to YUY2 encoding. D3D counterpart: DXGI...
Definition: GraphicsTypes.h:546
Three-component 96-bit signed-integer format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32...
Definition: GraphicsTypes.h:283
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
Two-component 64-bit format with 32-bit floating-point depth channel and 8-bit stencil channel...
Definition: GraphicsTypes.h:336
Four-component 32-bit unsigned-integer format with 8-bit channels. D3D counterpart: DXGI_FORMAT_R8G...
Definition: GraphicsTypes.h:377
Four-component 32-bit typeless format that with 8 bits for each color channel, and 8 bits are unused...
Definition: GraphicsTypes.h:716
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
Single-component 8-bit signed-normalized-integer format. D3D counterpart: DXGI_FORMAT_R8_SNORM. OpenGL counterpart: GL_R8_SNORM.
Definition: GraphicsTypes.h:518
Three-component block-compression unsigned-normalized-integer format with 4 to 7 bits per color chann...
Definition: GraphicsTypes.h:761
uint32_t Uint32
32-bit unsigned integer
Definition: BasicTypes.h:39
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
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
Three-component 96-bit unsigned-integer format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R...
Definition: GraphicsTypes.h:278
Two-component 32-bit typeless format with 16-bit channels. D3D counterpart: DXGI_FORMAT_R16G16_TYPE...
Definition: GraphicsTypes.h:389
Two-component 64-bit format with 32-bit typeless data and 8-bit G channel. D3D counterpart: DXGI_FO...
Definition: GraphicsTypes.h:345
Three-component block-compression unsigned-normalized-integer sRGB format with 4 to 7 bits per color ...
Definition: GraphicsTypes.h:769
Two-component 32-bit format with 24 bits for unsigned-normalized-integer depth and 8 bits for stencil...
Definition: GraphicsTypes.h:441
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
Four-component 128-bit floating-point format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32...
Definition: GraphicsTypes.h:255
Four-component 128-bit signed-integer format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32...
Definition: GraphicsTypes.h:263
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
Two-component 16-bit signed-normalized-integer format with 8-bit channels. D3D counterpart: DXGI_FO...
Definition: GraphicsTypes.h:466
Four-component signed-normalized-integer block-compression sRGB format with 5 bits for R...
Definition: GraphicsTypes.h:598
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
Two-component 32-bit unsigned-normalized-integer format with 16-bit channels. D3D counterpart: DXGI...
Definition: GraphicsTypes.h:399
Two-component 64-bit format with 32-bit floating-point R channel and 8+24-bits of typeless data...
Definition: GraphicsTypes.h:340
Four-component 32-bit typeless format with 8-bit channels. D3D counterpart: DXGI_FORMAT_R8G8B8A8_TY...
Definition: GraphicsTypes.h:365
Four-component 64-bit half-precision floating-point format with 16-bit channels. D3D counterpart: D...
Definition: GraphicsTypes.h:291
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
Four-component 128-bit typeless format with 32-bit channels. D3D counterpart: DXGI_FORMAT_R32G32B32...
Definition: GraphicsTypes.h:251
Single-component 8-bit unsigned-integer format. D3D counterpart: DXGI_FORMAT_R8_UINT. OpenGL counterpart: GL_R8UI.
Definition: GraphicsTypes.h:514
Single-component 8-bit signed-integer format. D3D counterpart: DXGI_FORMAT_R8_SINT. OpenGL counterpart: GL_R8I.
Definition: GraphicsTypes.h:522
Four-component 32-bit typeless format with 8 bits for each channel. D3D counterpart: DXGI_FORMAT_B8...
Definition: GraphicsTypes.h:706
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
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
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