Files
mql5-skills/skills/mql5/references/docs/31-directx/1075-directx-dxtexturecreate.md
T
2026-06-23 21:47:51 +08:00

9.1 KiB

DXTextureCreate

Creates a 2D texture out of a rectangle of a specified size cut from a passed image.

int  DXTextureCreate(
   int             context,         // graphic context handle
   ENUM_DX_FORMAT  format,          // pixel color format 
   uint            width,           // source image width
   uint            height,          // source image height
   const void&     data[],          // array of source image pixels
   uint            data_x,          // X coordinate of a rectangle used to create a texture
   uint            data_y,          // Y coordinate of a rectangle used to create a texture
   uint            data_width,      // rectangle width for creating a texture
   uint            data_height      // rectangle height for creating a texture
   );

Parameters

context

[in]  Handle for a graphic context created in DXContextCreate().

format

[in]  Pixel color format set from the ENUM_DX_FORMAT enumeration.

width

[in]  Width of an image a texture is based on.

height

[in]  Height of an image a texture is based on.

data

[in]  Pixel array of an image a texture is based on.

data_x

[in]  X coordinate of a rectangle (X offset) used to create a texture.

data_y

[in]  Y coordinate of a rectangle (Y offset) used to create a texture.

data_width

[in]  Width of a rectangle used to create a texture.

data_height

[in]  Height of a rectangle used to create a texture.

Return Value

Texture handle or INVALID_HANDLE in case of an error. To receive an error code, the GetLastError() function should be called.

Note

A created handle that is no longer in use should be explicitly released by the DXRelease() function.

ENUM_DX_FORMAT

ID Value Match in DXGI_FORMAT
DX_FORMAT_UNKNOWN 0 DXGI_FORMAT_UNKNOWN
DX_FORMAT_R32G32B32A32_TYPELESS 1 DXGI_FORMAT_R32G32B32A32_TYPELESS
DX_FORMAT_R32G32B32A32_FLOAT 2 DXGI_FORMAT_R32G32B32A32_FLOAT
DX_FORMAT_R32G32B32A32_UINT 3 DXGI_FORMAT_R32G32B32A32_UINT
DX_FORMAT_R32G32B32A32_SINT 4 DXGI_FORMAT_R32G32B32A32_SINT
DX_FORMAT_R32G32B32_TYPELESS 5 DXGI_FORMAT_R32G32B32_TYPELESS
DX_FORMAT_R32G32B32_FLOAT 6 DXGI_FORMAT_R32G32B32_FLOAT
DX_FORMAT_R32G32B32_UINT 7 DXGI_FORMAT_R32G32B32_UINT
DX_FORMAT_R32G32B32_SINT 8 DXGI_FORMAT_R32G32B32_SINT
DX_FORMAT_R16G16B16A16_TYPELESS 9 DXGI_FORMAT_R16G16B16A16_TYPELESS
DX_FORMAT_R16G16B16A16_FLOAT 10 DXGI_FORMAT_R16G16B16A16_FLOAT
DX_FORMAT_R16G16B16A16_UNORM 11 DXGI_FORMAT_R16G16B16A16_UNORM
DX_FORMAT_R16G16B16A16_UINT 12 DXGI_FORMAT_R16G16B16A16_UINT
DX_FORMAT_R16G16B16A16_SNORM 13 DXGI_FORMAT_R16G16B16A16_SNORM
DX_FORMAT_R16G16B16A16_SINT 14 DXGI_FORMAT_R16G16B16A16_SINT
DX_FORMAT_R32G32_TYPELESS 15 DXGI_FORMAT_R32G32_TYPELESS
DX_FORMAT_R32G32_FLOAT 16 DXGI_FORMAT_R32G32_FLOAT
DX_FORMAT_R32G32_UINT 17 DXGI_FORMAT_R32G32_UINT
DX_FORMAT_R32G32_SINT 18 DXGI_FORMAT_R32G32_SINT
DX_FORMAT_R32G8X24_TYPELESS 19 DXGI_FORMAT_R32G8X24_TYPELESS
DX_FORMAT_D32_FLOAT_S8X24_UINT 20 DXGI_FORMAT_D32_FLOAT_S8X24_UINT
DX_FORMAT_R32_FLOAT_X8X24_TYPELESS 21 DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS
DX_FORMAT_X32_TYPELESS_G8X24_UINT 22 DXGI_FORMAT_X32_TYPELESS_G8X24_UINT
DX_FORMAT_R10G10B10A2_TYPELESS 23 DXGI_FORMAT_R10G10B10A2_TYPELESS
DX_FORMAT_R10G10B10A2_UNORM 24 DXGI_FORMAT_R10G10B10A2_UNORM
DX_FORMAT_R10G10B10A2_UINT 25 DXGI_FORMAT_R10G10B10A2_UINT
DX_FORMAT_R11G11B10_FLOAT 26 DXGI_FORMAT_R11G11B10_FLOAT
DX_FORMAT_R8G8B8A8_TYPELESS 27 DXGI_FORMAT_R8G8B8A8_TYPELESS
DX_FORMAT_R8G8B8A8_UNORM 28 DXGI_FORMAT_R8G8B8A8_UNORM
DX_FORMAT_R8G8B8A8_UNORM_SRGB 29 DXGI_FORMAT_R8G8B8A8_UNORM_SRGB
DX_FORMAT_R8G8B8A8_UINT 30 DXGI_FORMAT_R8G8B8A8_UINT
DX_FORMAT_R8G8B8A8_SNORM 31 DXGI_FORMAT_R8G8B8A8_SNORM
DX_FORMAT_R8G8B8A8_SINT 32 DXGI_FORMAT_R8G8B8A8_SINT
DX_FORMAT_R16G16_TYPELESS 33 DXGI_FORMAT_R16G16_TYPELESS
DX_FORMAT_R16G16_FLOAT 34 DXGI_FORMAT_R16G16_FLOAT
DX_FORMAT_R16G16_UNORM 35 DXGI_FORMAT_R16G16_UNORM
DX_FORMAT_R16G16_UINT 36 DXGI_FORMAT_R16G16_UINT
DX_FORMAT_R16G16_SNORM 37 DXGI_FORMAT_R16G16_SNORM
DX_FORMAT_R16G16_SINT 38 DXGI_FORMAT_R16G16_SINT
DX_FORMAT_R32_TYPELESS 39 DXGI_FORMAT_R32_TYPELESS
DX_FORMAT_D32_FLOAT 40 DXGI_FORMAT_D32_FLOAT
DX_FORMAT_R32_FLOAT 41 DXGI_FORMAT_R32_FLOAT
DX_FORMAT_R32_UINT 42 DXGI_FORMAT_R32_UINT
DX_FORMAT_R32_SINT 43 DXGI_FORMAT_R32_SINT
DX_FORMAT_R24G8_TYPELESS 44 DXGI_FORMAT_R24G8_TYPELESS
DX_FORMAT_D24_UNORM_S8_UINT 45 DXGI_FORMAT_D24_UNORM_S8_UINT
DX_FORMAT_R24_UNORM_X8_TYPELESS 46 DXGI_FORMAT_R24_UNORM_X8_TYPELESS
DX_FORMAT_X24_TYPELESS_G8_UINT 47 DXGI_FORMAT_X24_TYPELESS_G8_UINT
DX_FORMAT_R8G8_TYPELESS 48 DXGI_FORMAT_R8G8_TYPELESS
DX_FORMAT_R8G8_UNORM 49 DXGI_FORMAT_R8G8_UNORM
DX_FORMAT_R8G8_UINT 50 DXGI_FORMAT_R8G8_UINT
DX_FORMAT_R8G8_SNORM 51 DXGI_FORMAT_R8G8_SNORM
DX_FORMAT_R8G8_SINT 52 DXGI_FORMAT_R8G8_SINT
DX_FORMAT_R16_TYPELESS 53 DXGI_FORMAT_R16_TYPELESS
DX_FORMAT_R16_FLOAT 54 DXGI_FORMAT_R16_FLOAT
DX_FORMAT_D16_UNORM 55 DXGI_FORMAT_D16_UNORM
DX_FORMAT_R16_UNORM 56 DXGI_FORMAT_R16_UNORM
DX_FORMAT_R16_UINT 57 DXGI_FORMAT_R16_UINT
DX_FORMAT_R16_SNORM 58 DXGI_FORMAT_R16_SNORM
DX_FORMAT_R16_SINT 59 DXGI_FORMAT_R16_SINT
DX_FORMAT_R8_TYPELESS 60 DXGI_FORMAT_R8_TYPELESS
DX_FORMAT_R8_UNORM 61 DXGI_FORMAT_R8_UNORM
DX_FORMAT_R8_UINT 62 DXGI_FORMAT_R8_UINT
DX_FORMAT_R8_SNORM 63 DXGI_FORMAT_R8_SNORM
DX_FORMAT_R8_SINT 64 DXGI_FORMAT_R8_SINT
DX_FORMAT_A8_UNORM 65 DXGI_FORMAT_A8_UNORM
DX_FORMAT_R1_UNORM 66 DXGI_FORMAT_R1_UNORM
DX_FORMAT_R9G9B9E5_SHAREDEXP 67 DXGI_FORMAT_R9G9B9E5_SHAREDEXP
DX_FORMAT_R8G8_B8G8_UNORM 68 DXGI_FORMAT_R8G8_B8G8_UNORM
DX_FORMAT_G8R8_G8B8_UNORM 69 DXGI_FORMAT_G8R8_G8B8_UNORM
DX_FORMAT_BC1_TYPELESS 70 DXGI_FORMAT_BC1_TYPELESS
DX_FORMAT_BC1_UNORM 71 DXGI_FORMAT_BC1_UNORM
DX_FORMAT_BC1_UNORM_SRGB 72 DXGI_FORMAT_BC1_UNORM_SRGB
DX_FORMAT_BC2_TYPELESS 73 DXGI_FORMAT_BC2_TYPELESS
DX_FORMAT_BC2_UNORM 74 DXGI_FORMAT_BC2_UNORM
DX_FORMAT_BC2_UNORM_SRGB 75 DXGI_FORMAT_BC2_UNORM_SRGB
DX_FORMAT_BC3_TYPELESS 76 DXGI_FORMAT_BC3_TYPELESS
DX_FORMAT_BC3_UNORM 77 DXGI_FORMAT_BC3_UNORM
DX_FORMAT_BC3_UNORM_SRGB 78 DXGI_FORMAT_BC3_UNORM_SRGB
DX_FORMAT_BC4_TYPELESS 79 DXGI_FORMAT_BC4_TYPELESS
DX_FORMAT_BC4_UNORM 80 DXGI_FORMAT_BC4_UNORM
DX_FORMAT_BC4_SNORM 81 DXGI_FORMAT_BC4_SNORM
DX_FORMAT_BC5_TYPELESS 82 DXGI_FORMAT_BC5_TYPELESS
DX_FORMAT_BC5_UNORM 83 DXGI_FORMAT_BC5_UNORM
DX_FORMAT_BC5_SNORM 84 DXGI_FORMAT_BC5_SNORM
DX_FORMAT_B5G6R5_UNORM 85 DXGI_FORMAT_B5G6R5_UNORM
DX_FORMAT_B5G5R5A1_UNORM 86 DXGI_FORMAT_B5G5R5A1_UNORM
DX_FORMAT_B8G8R8A8_UNORM 87 DXGI_FORMAT_B8G8R8A8_UNORM
DX_FORMAT_B8G8R8X8_UNORM 88 DXGI_FORMAT_B8G8R8X8_UNORM
DX_FORMAT_R10G10B10_XR_BIAS_A2_UNORM 89 DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM
DX_FORMAT_B8G8R8A8_TYPELESS 90 DXGI_FORMAT_B8G8R8A8_TYPELESS
DX_FORMAT_B8G8R8A8_UNORM_SRGB 91 DXGI_FORMAT_B8G8R8A8_UNORM_SRGB
DX_FORMAT_B8G8R8X8_TYPELESS 92 DXGI_FORMAT_B8G8R8X8_TYPELESS
DX_FORMAT_B8G8R8X8_UNORM_SRGB 93 DXGI_FORMAT_B8G8R8X8_UNORM_SRGB
DX_FORMAT_BC6H_TYPELESS 94 DXGI_FORMAT_BC6H_TYPELESS
DX_FORMAT_BC6H_UF16 95 DXGI_FORMAT_BC6H_UF16
DX_FORMAT_BC6H_SF16 96 DXGI_FORMAT_BC6H_SF16
DX_FORMAT_BC7_TYPELESS 97 DXGI_FORMAT_BC7_TYPELESS
DX_FORMAT_BC7_UNORM 98 DXGI_FORMAT_BC7_UNORM
DX_FORMAT_BC7_UNORM_SRGB 99 DXGI_FORMAT_BC7_UNORM_SRGB
DX_FORMAT_AYUV 100 DXGI_FORMAT_AYUV
DX_FORMAT_Y410 101 DXGI_FORMAT_Y410
DX_FORMAT_Y416 102 DXGI_FORMAT_Y416
DX_FORMAT_NV12 103 DXGI_FORMAT_NV12
DX_FORMAT_P010 104 DXGI_FORMAT_P010
DX_FORMAT_P016 105 DXGI_FORMAT_P016
DX_FORMAT_420_OPAQUE 106 DXGI_FORMAT_420_OPAQUE
DX_FORMAT_YUY2 107 DXGI_FORMAT_YUY2
DX_FORMAT_Y210 108 DXGI_FORMAT_Y210
DX_FORMAT_Y216 109 DXGI_FORMAT_Y216
DX_FORMAT_NV11 110 DXGI_FORMAT_NV11
DX_FORMAT_AI44 111 DXGI_FORMAT_AI44
DX_FORMAT_IA44 112 DXGI_FORMAT_IA44
DX_FORMAT_P8 113 DXGI_FORMAT_P8
DX_FORMAT_A8P8 114 DXGI_FORMAT_A8P8
DX_FORMAT_B4G4R4A4_UNORM 115 DXGI_FORMAT_B4G4R4A4_UNORM
DX_FORMAT_P208 130 DXGI_FORMAT_P208
DX_FORMAT_V208 131 DXGI_FORMAT_V208
DX_FORMAT_V408 132 DXGI_FORMAT_V408
DX_FORMAT_FORCE_UINT 0xffffffff DXGI_FORMAT_FORCE_UINT