Harlinn.Windows 0.1
Loading...
Searching...
No Matches
Harlinn::Windows::Graphics::DXGI Namespace Reference

Classes

class  Adapter
 The Adapter class represents a display subsystem (including one or more GPUs, DACs and video memory). More...
 
class  Adapter1
 The Adapter1 class represents a display sub-system (including one or more GPU's, DACs and video memory). More...
 
class  Adapter2
 The Adapter2 class represents a display subsystem, which includes one or more GPUs, DACs, and video memory. More...
 
class  Adapter3
 This class adds some memory residency methods, for budgeting and reserving physical memory. More...
 
class  Adapter4
 This class represents a display subsystem, and extends Adapter3 to introduce a method to check for an adapter's compatibility with Arbitrary Code Guard (ACG). More...
 
class  DecodeSwapChain
 Represents a swap chain that is used by desktop media apps to decode video data and show it on a DirectComposition surface. More...
 
class  Device
 An Device class implements a derived class for DXGI objects that produce image data. More...
 
class  Device1
 The Device1 class implements a derived class for DXGI objects that produce image data. More...
 
class  Device2
 The Device2 class implements a derived class for DXGI objects that produce image data. The class exposes methods to block CPU processing until the GPU completes processing, and to offer resources to the operating system. More...
 
class  Device3
 The Device3 class implements a derived class for DXGI objects that produce image data. The class exposes a method to trim graphics memory usage by the DXGI device. More...
 
class  Device4
 This class provides updated methods to offer and reclaim resources. More...
 
class  DeviceSubObject
 Base class for objects that are tied to the device so that they can retrieve a pointer to it. More...
 
class  DisplayControl
 The DisplayControl class exposes methods to indicate user preference for the operating system's stereoscopic 3D display behavior and to set stereoscopic 3D display status to enable or disable. More...
 
class  Factory
 The Factory class implements methods for generating DXGI objects (which handle full screen transitions). More...
 
class  Factory1
 The Factory1 class implements methods for generating DXGI objects. More...
 
class  Factory2
 The Factory2 class includes methods to create a newer version swap chain with more features than SwapChain and to monitor stereoscopic 3D capabilities. More...
 
class  Factory3
 Enables creating Microsoft DirectX Graphics Infrastructure (DXGI) objects. More...
 
class  Factory4
 Enables creating Microsoft DirectX Graphics Infrastructure (DXGI) objects. More...
 
class  Factory5
 This class introduces a single method to support variable refresh rate displays. More...
 
class  Factory6
 This class introduces a single method that enumerates graphics adapters based on a given GPU preference. More...
 
class  Factory7
 This class enables registration for notifications to detect adapter enumeration state changes. More...
 
class  FactoryMedia
 Creates swap chains for desktop media apps that use DirectComposition surfaces to decode and display video. More...
 
class  KeyedMutex
 Represents a keyed mutex, which allows exclusive access to a shared resource that is used by multiple devices. More...
 
class  Object
 This is the base class for all DXGI objects; DXGI::Object supports associating caller-defined (private data) with an object and retrieval of an interface to the parent object. More...
 
class  Output
 An Output object represents an adapter output (such as a monitor). More...
 
class  Output1
 An Output1 object represents an adapter output (such as a monitor). More...
 
class  Output2
 Represents an adapter output (such as a monitor). The Output2 class exposes a method to check for multiplane overlay support on the primary output adapter. More...
 
class  Output3
 Represents an adapter output (such as a monitor). The Output3 class exposes a method to check for overlay support. More...
 
class  Output4
 Represents an adapter output (such as a monitor). The Output4 class exposes a method to check for overlay color space support. More...
 
class  Output5
 Represents an adapter output (such as a monitor). The Output5 class exposes a single method to specify a list of supported formats for full screen surfaces. More...
 
class  Output6
 Represents an adapter output (such as a monitor). The Output6 class introduces methods to provide specific monitor capabilities. More...
 
class  OutputDuplication
 The OutputDuplication class accesses and manipulates the duplicated desktop image. More...
 
class  Resource
 Allows resource sharing and identifies the memory that a resource resides in. More...
 
class  Resource1
 The Resource1 class extends the Resource class by adding support for creating a subresource surface object and for creating a handle to a shared resource. More...
 
struct  SampleDesc
 Describes multi-sampling parameters for a resource. More...
 
class  Surface
 Implements methods for image-data objects. More...
 
class  Surface1
 The Surface1 class extends the Surface class by adding support for using Windows Graphics Device Interface (GDI) to render to a Microsoft DirectX Graphics Infrastructure (DXGI) surface. More...
 
class  Surface2
 The Surface2 class extends the Surface1 class by adding support for subresource surfaces and getting a handle to a shared resource. More...
 
class  SwapChain
 A SwapChain object implements one or more surfaces for storing rendered data before presenting it to an output. More...
 
class  SwapChain1
 Provides presentation capabilities that are enhanced from SwapChain. These presentation capabilities consist of specifying dirty rectangles and scroll rectangle to optimize the presentation. More...
 
class  SwapChain2
 Extends SwapChain1 with methods to support swap back buffer scaling and lower-latency swap chains. More...
 
class  SwapChain3
 Extends SwapChain2 with methods to support getting the index of the swap chain's current back buffer and support for color space. More...
 
class  SwapChain4
 This class exposes a single method for setting video metadata. More...
 
class  SwapChainMedia
 This swap chain class allows desktop media applications to request a seamless change to a specific refresh rate. More...
 

Enumerations

enum  Format : UInt32 {
  Unknown = DXGI_FORMAT_UNKNOWN ,
  RGBA32 = DXGI_FORMAT_R32G32B32A32_TYPELESS ,
  RGBAFloat32 = DXGI_FORMAT_R32G32B32A32_FLOAT ,
  RGBAUInt32 = DXGI_FORMAT_R32G32B32A32_UINT ,
  RGBAInt32 = DXGI_FORMAT_R32G32B32A32_SINT ,
  RGB32 = DXGI_FORMAT_R32G32B32_TYPELESS ,
  RGBFloat32 = DXGI_FORMAT_R32G32B32_FLOAT ,
  RGBUInt32 = DXGI_FORMAT_R32G32B32_UINT ,
  RGBInt32 = DXGI_FORMAT_R32G32B32_SINT ,
  RGBA16 = DXGI_FORMAT_R16G16B16A16_TYPELESS ,
  RGBAFloat16 = DXGI_FORMAT_R16G16B16A16_FLOAT ,
  RGBANUInt16 = DXGI_FORMAT_R16G16B16A16_UNORM ,
  RGBAUInt16 = DXGI_FORMAT_R16G16B16A16_UINT ,
  RGBANInt16 = DXGI_FORMAT_R16G16B16A16_SNORM ,
  RGBAInt16 = DXGI_FORMAT_R16G16B16A16_SINT ,
  RG32 = DXGI_FORMAT_R32G32_TYPELESS ,
  RGFloat32 = DXGI_FORMAT_R32G32_FLOAT ,
  RGUInt32 = DXGI_FORMAT_R32G32_UINT ,
  RGInt32 = DXGI_FORMAT_R32G32_SINT ,
  R32G8X24 = DXGI_FORMAT_R32G8X24_TYPELESS ,
  DFloat32SInt8X24 = DXGI_FORMAT_D32_FLOAT_S8X24_UINT ,
  RFloat32X8X24 = DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS ,
  X32GUInt8X24 = DXGI_FORMAT_X32_TYPELESS_G8X24_UINT ,
  RGB10A2 = DXGI_FORMAT_R10G10B10A2_TYPELESS ,
  RGBNUInt10ANUInt2 = DXGI_FORMAT_R10G10B10A2_UNORM ,
  RGBUInt10AUInt2 = DXGI_FORMAT_R10G10B10A2_UINT ,
  RGFloat11BFloat10_float = DXGI_FORMAT_R11G11B10_FLOAT ,
  RGBA8 = DXGI_FORMAT_R8G8B8A8_TYPELESS ,
  RGBANUInt8 = DXGI_FORMAT_R8G8B8A8_UNORM ,
  RGBANUInt8SRGB = DXGI_FORMAT_R8G8B8A8_UNORM_SRGB ,
  RGBAUInt8 = DXGI_FORMAT_R8G8B8A8_UINT ,
  RGBANInt8 = DXGI_FORMAT_R8G8B8A8_SNORM ,
  RGBAInt8 = DXGI_FORMAT_R8G8B8A8_SINT ,
  RG16 = DXGI_FORMAT_R16G16_TYPELESS ,
  RGFloat16 = DXGI_FORMAT_R16G16_FLOAT ,
  RGNUInt16 = DXGI_FORMAT_R16G16_UNORM ,
  RGUInt16 = DXGI_FORMAT_R16G16_UINT ,
  RGNInt16 = DXGI_FORMAT_R16G16_SNORM ,
  RGInt16 = DXGI_FORMAT_R16G16_SINT ,
  R32 = DXGI_FORMAT_R32_TYPELESS ,
  DFloat32 = DXGI_FORMAT_D32_FLOAT ,
  RFloat32 = DXGI_FORMAT_R32_FLOAT ,
  RUInt32 = DXGI_FORMAT_R32_UINT ,
  RInt32 = DXGI_FORMAT_R32_SINT ,
  R24G8 = DXGI_FORMAT_R24G8_TYPELESS ,
  DNUInt24SUInt8 = DXGI_FORMAT_D24_UNORM_S8_UINT ,
  RNUInt24X8 = DXGI_FORMAT_R24_UNORM_X8_TYPELESS ,
  X24GUInt8 = DXGI_FORMAT_X24_TYPELESS_G8_UINT ,
  RG8 = DXGI_FORMAT_R8G8_TYPELESS ,
  RGNUInt8 = DXGI_FORMAT_R8G8_UNORM ,
  RGUInt8 = DXGI_FORMAT_R8G8_UINT ,
  RGNInt8 = DXGI_FORMAT_R8G8_SNORM ,
  RGInt8 = DXGI_FORMAT_R8G8_SINT ,
  R16 = DXGI_FORMAT_R16_TYPELESS ,
  RFloat16 = DXGI_FORMAT_R16_FLOAT ,
  D16_unorm = DXGI_FORMAT_D16_UNORM ,
  RNUInt16 = DXGI_FORMAT_R16_UNORM ,
  RUInt16 = DXGI_FORMAT_R16_UINT ,
  RNInt16 = DXGI_FORMAT_R16_SNORM ,
  RInt16 = DXGI_FORMAT_R16_SINT ,
  R8 = DXGI_FORMAT_R8_TYPELESS ,
  RNUInt8 = DXGI_FORMAT_R8_UNORM ,
  RUInt8 = DXGI_FORMAT_R8_UINT ,
  RNInt8 = DXGI_FORMAT_R8_SNORM ,
  RInt8 = DXGI_FORMAT_R8_SINT ,
  ANUInt8 = DXGI_FORMAT_A8_UNORM ,
  RNUInt1 = DXGI_FORMAT_R1_UNORM ,
  RGBMantissa9SharedExp5 = DXGI_FORMAT_R9G9B9E5_SHAREDEXP ,
  RGBGNUInt8 = DXGI_FORMAT_R8G8_B8G8_UNORM ,
  GRGBNUInt8 = DXGI_FORMAT_G8R8_G8B8_UNORM ,
  BlockCompressed1 = DXGI_FORMAT_BC1_TYPELESS ,
  BlockCompressed1UNorm = DXGI_FORMAT_BC1_UNORM ,
  BlockCompressed1UNormSRGB = DXGI_FORMAT_BC1_UNORM_SRGB ,
  BlockCompressed2 = DXGI_FORMAT_BC2_TYPELESS ,
  BlockCompressed2UNorm = DXGI_FORMAT_BC2_UNORM ,
  BlockCompressed2UNormSRGB = DXGI_FORMAT_BC2_UNORM_SRGB ,
  BlockCompressed3 = DXGI_FORMAT_BC3_TYPELESS ,
  BlockCompressed3UNorm = DXGI_FORMAT_BC3_UNORM ,
  BlockCompressed3UNormSRGB = DXGI_FORMAT_BC3_UNORM_SRGB ,
  BlockCompressed4 = DXGI_FORMAT_BC4_TYPELESS ,
  BlockCompressed4UNorm = DXGI_FORMAT_BC4_UNORM ,
  BlockCompressed4SNorm = DXGI_FORMAT_BC4_SNORM ,
  BlockCompressed5 = DXGI_FORMAT_BC5_TYPELESS ,
  BlockCompressed5UNorm = DXGI_FORMAT_BC5_UNORM ,
  BlockCompressed5SNorm = DXGI_FORMAT_BC5_SNORM ,
  BNUInt5GNUInt6RNUInt5 = DXGI_FORMAT_B5G6R5_UNORM ,
  BNUInt5GNUint5RNUint5ANUInt1 = DXGI_FORMAT_B5G5R5A1_UNORM ,
  BNUInt8GNUInt8RNUInt8ANUInt8 = DXGI_FORMAT_B8G8R8A8_UNORM ,
  BNUInt8GNUInt8RNUInt8X8_unorm = DXGI_FORMAT_B8G8R8X8_UNORM ,
  RFixed10GFixed10BFixed10ANUInt2 = DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM ,
  B8G8R8A8 = DXGI_FORMAT_B8G8R8A8_TYPELESS ,
  BNUInt8GNUInt8RNUInt8ANUInt8SRGB = DXGI_FORMAT_B8G8R8A8_UNORM_SRGB ,
  B8G8R8X8 = DXGI_FORMAT_B8G8R8X8_TYPELESS ,
  BNUInt8GNUInt8RNUInt8X8SRGB = DXGI_FORMAT_B8G8R8X8_UNORM_SRGB ,
  BlockCompressed6H = DXGI_FORMAT_BC6H_TYPELESS ,
  BlockCompressed6H_UF16 = DXGI_FORMAT_BC6H_UF16 ,
  BlockCompressed6H_SF16 = DXGI_FORMAT_BC6H_SF16 ,
  BlockCompressed7 = DXGI_FORMAT_BC7_TYPELESS ,
  BlockCompressed7UNorm = DXGI_FORMAT_BC7_UNORM ,
  BlockCompressed7UNormSRGB = DXGI_FORMAT_BC7_UNORM_SRGB ,
  AYUV = DXGI_FORMAT_AYUV ,
  Y410 = DXGI_FORMAT_Y410 ,
  Y416 = DXGI_FORMAT_Y416 ,
  NV12 = DXGI_FORMAT_NV12 ,
  P010 = DXGI_FORMAT_P010 ,
  P016 = DXGI_FORMAT_P016 ,
  Opaque420 = DXGI_FORMAT_420_OPAQUE ,
  YUY2 = DXGI_FORMAT_YUY2 ,
  Y210 = DXGI_FORMAT_Y210 ,
  Y216 = DXGI_FORMAT_Y216 ,
  NV11 = DXGI_FORMAT_NV11 ,
  AI44 = DXGI_FORMAT_AI44 ,
  IA44 = DXGI_FORMAT_IA44 ,
  P8 = DXGI_FORMAT_P8 ,
  A8P8 = DXGI_FORMAT_A8P8 ,
  B4g4r4a4_unorm = DXGI_FORMAT_B4G4R4A4_UNORM ,
  P208 = DXGI_FORMAT_P208 ,
  V208 = DXGI_FORMAT_V208 ,
  V408 = DXGI_FORMAT_V408 ,
  Sampler_feedback_min_mip_opaque = DXGI_FORMAT_SAMPLER_FEEDBACK_MIN_MIP_OPAQUE ,
  Sampler_feedback_mip_region_used_opaque = DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE ,
  Force_uint = std::bit_cast<UInt32>(DXGI_FORMAT_FORCE_UINT)
}
 Resource data formats, including fully-typed and type-less formats. More...
 

Functions

template<typename T = Factory7>
requires std::is_base_of_v< Factory2, T>
T CreateFactory (bool debug=false)
 Creates a DXGI 1.3 factory that you can use to generate other DXGI objects.
 

Enumeration Type Documentation

◆ Format

Resource data formats, including fully-typed and type-less formats.

Enumerator
Unknown 

The format is not known.

RGBA32 

A four-component, 128-bit typeless format that supports 32 bits per channel including alpha.

RGBAFloat32 

A four-component, 128-bit floating-point format that supports 32 bits per channel including alpha.

RGBAUInt32 

A four-component, 128-bit unsigned-integer format that supports 32 bits per channel including alpha.

RGBAInt32 

A four-component, 128-bit signed-integer format that supports 32 bits per channel including alpha.

RGB32 

A three-component, 96-bit typeless format that supports 32 bits per color channel.

RGBFloat32 

A three-component, 96-bit floating-point format that supports 32 bits per color channel.

RGBUInt32 

A three-component, 96-bit unsigned-integer format that supports 32 bits per color channel.

RGBInt32 

A three-component, 96-bit signed-integer format that supports 32 bits per color channel.

RGBA16 

A four-component, 64-bit typeless format that supports 16 bits per channel including alpha.

RGBAFloat16 

A four-component, 64-bit floating-point format that supports 16 bits per channel including alpha.

RGBANUInt16 

A four-component, 64-bit unsigned-normalized-integer format that supports 16 bits per channel including alpha.

RGBAUInt16 

A four-component, 64-bit unsigned-integer format that supports 16 bits per channel including alpha.

RGBANInt16 

A four-component, 64-bit signed-normalized-integer format that supports 16 bits per channel including alpha.

RGBAInt16 

A four-component, 64-bit signed-integer format that supports 16 bits per channel including alpha.

RG32 

A two-component, 64-bit typeless format that supports 32 bits for the red channel and 32 bits for the green channel.

RGFloat32 

A two-component, 64-bit floating-point format that supports 32 bits for the red channel and 32 bits for the green channel.

RGUInt32 

A two-component, 64-bit unsigned-integer format that supports 32 bits for the red channel and 32 bits for the green channel.

RGInt32 

A two-component, 64-bit signed-integer format that supports 32 bits for the red channel and 32 bits for the green channel.

R32G8X24 

A two-component, 64-bit typeless format that supports 32 bits for the red channel, 8 bits for the green channel, and 24 bits are unused.

DFloat32SInt8X24 

A 32-bit floating-point component, and two unsigned-integer components (with an additional 32 bits). This format supports 32-bit depth, 8-bit stencil, and 24 bits are unused.

RFloat32X8X24 

A 32-bit floating-point component, and two typeless components (with an additional 32 bits). This format supports 32-bit red channel, 8 bits are unused, and 24 bits are unused.

X32GUInt8X24 

A 32-bit typeless component, and two unsigned-integer components (with an additional 32 bits). This format has 32 bits unused, 8 bits for green channel, and 24 bits are unused.

RGB10A2 

A four-component, 32-bit typeless format that supports 10 bits for each color and 2 bits for alpha.

RGBNUInt10ANUInt2 

A four-component, 32-bit unsigned-normalized-integer format that supports 10 bits for each color and 2 bits for alpha.

RGBUInt10AUInt2 

A four-component, 32-bit unsigned-integer format that supports 10 bits for each color and 2 bits for alpha.

RGFloat11BFloat10_float 

Three partial-precision floating-point numbers encoded into a single 32-bit value (a variant of s10e5, which is sign bit, 10-bit mantissa, and 5-bit biased exponent).

There are no sign bits, and there is a 5-bit biased exponent for each channel, 6-bit mantissa for R and G, and a 5-bit mantissa for B.

RGBA8 

A four-component, 32-bit typeless format that supports 8 bits per channel including alpha.

RGBANUInt8 

A four-component, 32-bit unsigned-normalized-integer format that supports 8 bits per channel including alpha.

RGBANUInt8SRGB 

A four-component, 32-bit unsigned-normalized integer sRGB format that supports 8 bits per channel including alpha.

RGBAUInt8 

A four-component, 32-bit unsigned-integer format that supports 8 bits per channel including alpha.

RGBANInt8 

A four-component, 32-bit signed-normalized-integer format that supports 8 bits per channel including alpha.

RGBAInt8 

A four-component, 32-bit signed-integer format that supports 8 bits per channel including alpha.

RG16 

A two-component, 32-bit typeless format that supports 16 bits for the red channel and 16 bits for the green channel.

RGFloat16 

A two-component, 32-bit floating-point format that supports 16 bits for the red channel and 16 bits for the green channel.

RGNUInt16 

A two-component, 32-bit unsigned-normalized-integer format that supports 16 bits each for the green and red channels.

RGUInt16 

A two-component, 32-bit unsigned-integer format that supports 16 bits for the red channel and 16 bits for the green channel.

RGNInt16 

A two-component, 32-bit signed-normalized-integer format that supports 16 bits for the red channel and 16 bits for the green channel.

RGInt16 

A two-component, 32-bit signed-integer format that supports 16 bits for the red channel and 16 bits for the green channel.

R32 

A single-component, 32-bit typeless format that supports 32 bits for the red channel.

DFloat32 

A single-component, 32-bit floating-point format that supports 32 bits for depth.

RFloat32 

A single-component, 32-bit floating-point format that supports 32 bits for the red channel.

RUInt32 

A single-component, 32-bit unsigned-integer format that supports 32 bits for the red channel.

RInt32 

A single-component, 32-bit signed-integer format that supports 32 bits for the red channel.

R24G8 

A two-component, 32-bit typeless format that supports 24 bits for the red channel and 8 bits for the green channel.

DNUInt24SUInt8 

A 32-bit z-buffer format that supports 24 bits for depth and 8 bits for stencil.

RNUInt24X8 

A 32-bit format, that contains a 24 bit, single-component, unsigned-normalized integer, with an additional typeless 8 bits. This format has 24 bits red channel and 8 bits unused.

X24GUInt8 

A 32-bit format, that contains a 24 bit, single-component, typeless format, with an additional 8 bit unsigned integer component. This format has 24 bits unused and 8 bits green channel.

RG8 

A two-component, 16-bit typeless format that supports 8 bits for the red channel and 8 bits for the green channel.

RGNUInt8 

A two-component, 16-bit unsigned-normalized-integer format that supports 8 bits for the red channel and 8 bits for the green channel.

RGUInt8 

A two-component, 16-bit unsigned-integer format that supports 8 bits for the red channel and 8 bits for the green channel.

RGNInt8 

A two-component, 16-bit signed-normalized-integer format that supports 8 bits for the red channel and 8 bits for the green channel.

RGInt8 

A two-component, 16-bit signed-integer format that supports 8 bits for the red channel and 8 bits for the green channel.

R16 

A single-component, 16-bit typeless format that supports 16 bits for the red channel.

RFloat16 

A single-component, 16-bit floating-point format that supports 16 bits for the red channel.

D16_unorm 

A single-component, 16-bit unsigned-normalized-integer format that supports 16 bits for depth.

RNUInt16 

A single-component, 16-bit unsigned-normalized-integer format that supports 16 bits for the red channel.

RUInt16 

A single-component, 16-bit unsigned-integer format that supports 16 bits for the red channel.

RNInt16 

A single-component, 16-bit signed-normalized-integer format that supports 16 bits for the red channel.

RInt16 

A single-component, 16-bit signed-integer format that supports 16 bits for the red channel.

R8 

A single-component, 8-bit typeless format that supports 8 bits for the red channel.

RNUInt8 

A single-component, 8-bit unsigned-normalized-integer format that supports 8 bits for the red channel.

RUInt8 

A single-component, 8-bit unsigned-integer format that supports 8 bits for the red channel.

RNInt8 

A single-component, 8-bit signed-normalized-integer format that supports 8 bits for the red channel.

RInt8 

A single-component, 8-bit signed-integer format that supports 8 bits for the red channel.

ANUInt8 

A single-component, 8-bit unsigned-normalized-integer format for alpha only.

RNUInt1 

A single-component, 1-bit unsigned-normalized integer format that supports 1 bit for the red channel.

RNUInt1 is designed specifically for text filtering, and must be used with a format-specific, configurable 8x8 filter mode. When calling an HLSL sampling function using this format, the address offset parameter must be set to (0,0).

RGBMantissa9SharedExp5 

Three partial-precision floating-point numbers encoded into a single 32-bit value all sharing the same 5-bit exponent (variant of s10e5, which is sign bit, 10-bit mantissa, and 5-bit biased exponent). There is no sign bit, and there is a shared 5-bit biased exponent and a 9-bit mantissa for each channel

RGBGNUInt8 

A four-component, 32-bit unsigned-normalized-integer format. This packed RGB format is analogous to the UYVY format. Each 32-bit block describes a pair of pixels: (R8, G8, B8) and (R8, G8, B8) where the R8/B8 values are repeated, and the G8 values are unique to each pixel.

GRGBNUInt8 

A four-component, 32-bit unsigned-normalized-integer format. This packed RGB format is analogous to the YUY2 format. Each 32-bit block describes a pair of pixels: (R8, G8, B8) and (R8, G8, B8) where the R8/B8 values are repeated, and the G8 values are unique to each pixel.

BlockCompressed1 

Four-component typeless block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11

.

BlockCompressed1UNorm 

Four-component block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11

.

BlockCompressed1UNormSRGB 

Four-component block-compression format for sRGB data. For information about block-compression formats, see Texture Block Compression in Direct3D 11

.

BlockCompressed2 

Four-component typeless block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11

.

BlockCompressed2UNorm 

Four-component block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11

.

BlockCompressed2UNormSRGB 

Four-component block-compression format for sRGB data. For information about block-compression formats, see Texture Block Compression in Direct3D 11

.

BlockCompressed3 

Four-component typeless block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11

.

BlockCompressed3UNorm 

Four-component block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11

.

BlockCompressed3UNormSRGB 

Four-component block-compression format for sRGB data. For information about block-compression formats, see Texture Block Compression in Direct3D 11

.

BlockCompressed4 

One-component typeless block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11

.

BlockCompressed4UNorm 

One-component block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11

.

BlockCompressed4SNorm 

One-component block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11

.

BlockCompressed5 

Two-component typeless block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11

.

BlockCompressed5UNorm 

Two-component block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11

.

BlockCompressed5SNorm 

Two-component block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11

.

BNUInt5GNUInt6RNUInt5 

A three-component, 16-bit unsigned-normalized-integer format that supports 5 bits for blue, 6 bits for green, and 5 bits for red.

BNUInt5GNUint5RNUint5ANUInt1 

A four-component, 16-bit unsigned-normalized-integer format that supports 5 bits for each color channel and 1-bit alpha.

BNUInt8GNUInt8RNUInt8ANUInt8 

A four-component, 32-bit unsigned-normalized-integer format that supports 8 bits for each color channel and 8-bit alpha.

BNUInt8GNUInt8RNUInt8X8_unorm 

A four-component, 32-bit unsigned-normalized-integer format that supports 8 bits for each color channel and 8 bits unused.

RFixed10GFixed10BFixed10ANUInt2 

A four-component, 32-bit 2.8-biased fixed-point format that supports 10 bits for each color channel and 2-bit alpha.

B8G8R8A8 

A four-component, 32-bit typeless format that supports 8 bits for each channel including alpha.

BNUInt8GNUInt8RNUInt8ANUInt8SRGB 

A four-component, 32-bit unsigned-normalized standard RGB format that supports 8 bits for each channel including alpha.

B8G8R8X8 

A four-component, 32-bit typeless format that supports 8 bits for each color channel, and 8 bits are unused.

BNUInt8GNUInt8RNUInt8X8SRGB 

A four-component, 32-bit unsigned-normalized standard RGB format that supports 8 bits for each color channel, and 8 bits are unused.

BlockCompressed6H 

A typeless block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11

.

BlockCompressed6H_UF16 

A block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11

.

BlockCompressed6H_SF16 

A block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11

.

BlockCompressed7 

A typeless block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11

.

BlockCompressed7UNorm 

A block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11

.

BlockCompressed7UNormSRGB 

A block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11

.

AYUV 
Y410 
Y416 
NV12 
P010 
P016 
Opaque420 
YUY2 
Y210 
Y216 
NV11 
AI44 
IA44 
P8 
A8P8 
B4g4r4a4_unorm 
P208 
V208 
V408 
Sampler_feedback_min_mip_opaque 
Sampler_feedback_mip_region_used_opaque 
Force_uint 

Function Documentation

◆ CreateFactory()

template<typename T = Factory7>
requires std::is_base_of_v< Factory2, T>
T Harlinn::Windows::Graphics::DXGI::CreateFactory ( bool debug = false)

Creates a DXGI 1.3 factory that you can use to generate other DXGI objects.

Template Parameters
TEither Factory2 or a class derived from Factory2. Defaults to Factory7.
Parameters
debugIf true explicitly request that DXGIDebug.dll be loaded.
Returns
The newly created factory.