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