MTLDataType Enum

Definition

The data type of a function argument, as used in the shader language code.

public enum MTLDataType
type MTLDataType = 
Inheritance
MTLDataType

Fields

Array 2

Indicates an array.

Bool 53

Indicates a Boolean value.

Bool2 54

Indicates vector of two Boolean values.

Bool3 55

Indicates vector of three Boolean values.

Bool4 56

Indicates vector of four Boolean values

Char 45

Indicates a signed 8-bit character.

Char2 46

Indicates a vector of two signed 8-bit characters.

Char3 47

Indicates a vector of three signed 8-bit characters.

Char4 48

Indicates a vector of four signed 8-bit characters.

Float 3

Indicates a 32-bit floating point value.

Float2 4

Indicates a vector of two 32-bit floating point values.

Float2x2 7

Indicates a 2x2 matrix of 32-bit floating point values.

Float2x3 8

Indicates a 2x3 matrix of 32-bit floating point values.

Float2x4 9

Indicates a 2x4 matrix of 32-bit floating point values.

Float3 5

Indicates a vector of three 32-bit floating point values.

Float3x2 10

Indicates a 3x2 matrix of 32-bit floating point values.

Float3x3 11

Indicates a 3x3 matrix of 32-bit floating point values.

Float3x4 12

Indicates a 3x4 matrix of 32-bit floating point values.

Float4 6

Indicates a vector of four 32-bit floating point values.

Float4x2 13

Indicates a 4x2 matrix of 32-bit floating point values.

Float4x3 14

Indicates a 4x3 matrix of 32-bit floating point values.

Float4x4 15

Indicates a 4x4 matrix of 32-bit floating point values.

Half 16

Indicates a 16-bit floating point value.

Half2 17

Indicates a vector of two 16-bit floating point values.

Half2x2 20

Indicates a 2x2 matrix of 16-bit floating point values.

Half2x3 21

Indicates a 2x3 matrix of 16-bit floating point values.

Half2x4 22

Indicates a 2x4 matrix of 16-bit floating point values.

Half3 18

Indicates a vector of three 16-bit floating point values.

Half3x2 23

Indicates a 3x2 matrix of 16-bit floating point values.

Half3x3 24

Indicates a 3x3 matrix of 16-bit floating point values.

Half3x4 25

Indicates a 3x4 matrix of 16-bit floating point values.

Half4 19

Indicates a vector of four 16-bit floating point values.

Half4x2 26

Indicates a 4x2 matrix of 16-bit floating point values.

Half4x3 27

Indicates a 4x3 matrix of 16-bit floating point values.

Half4x4 28

Indicates a 4x4 matrix of 16-bit floating point values.

IndirectCommandBuffer 80
Int 29

Indicates a signed 32-bit integer.

Int2 30

Indicates a vector of two 32-bit signed integers.

Int3 31

Indicates a vector of three signed 32-bit integers.

Int4 32

Indicates a vector of four signed 32-bit integers.

None 0

Indicates an unrecognized or invalid type.

Pointer 60

Indicates a pointer.

R16Snorm 65

Indicates a signed 16-bit normalized integer.

R16Unorm 64

Indicates an unsigned 16-bit normalized integer.

R8Snorm 63

Indicates a signed 8-bit normalized integer.

R8Unorm 62

Indicates an unsigned 8-bit normalized integer.

RenderPipeline 78
Rg11B10Float 76

Indicates a 32-bit packed floating point RGB value with 11 bits for R and G and 10 bits for B.

Rg16Snorm 69

Indicates a value that contains two signed 16-bit normalized integer components.

Rg16Unorm 68

Indicates a value that contains two unsigned 16-bit normalized integer components.

Rg8Snorm 67

Indicates a value that contains two signed 8-bit normalized integer components.

Rg8Unorm 66

Indicates a value that contains two unsigned 8-bit normalized integer components.

Rgb10A2Unorm 75

Indicates a packed RGBA normalized integer value with 10 bits each for RGB and 2 bits for A.

Rgb9E5Float 77

Indicates a packed RGBE normalized floating point value with 9 bits each for R, G, and B, with a 5-bit exponent.

Rgba16Snorm 74

Indicates a value that contains four signed 16-bit normalized integer components.

Rgba16Unorm 73

Indicates a value that contains four unsigned 16-bit normalized integer components.

Rgba8Snorm 72

Indicates a value that contains four signed 8-bit normalized integer components.

Rgba8Unorm 70

Indicates a value that contains four unsigned 8-bit normalized integer components.

Rgba8Unorm_sRgb 71

Indicates normalized unsigned 8-bit RGBA values, convertible to sRGB.

Sampler 59

Indicates a sampler.

Short 37

Indicates a signed 16-bit integer.

Short2 38

Indicates a value that contains two signed 16-bit integer components.

Short3 39

Indicates a value that contains three signed 16-bit integer components.

Short4 40

Indicates a value that contains four signed 16-bit integer components.

Struct 1

Indicates a struct.

Texture 58

Indicates a texture.

UChar 49

Indicates an unsigned 8-bit character.

UChar2 50

Indicates a value that contains two unsigned 8-bit integer components.

UChar3 51

Indicates a value that contains three unsigned 8-bit integer components.

UChar4 52

Indicates a value that contains four unsigned 8-bit integer components.

UInt 33

Indicates an unsigned 32-bit integer.

UInt2 34

Indicates a value that contains two unsigned 32-bit integer components.

UInt3 35

Indicates a value that contains three unsigned 32-bit integer components.

UInt4 36

Indicates a value that contains four unsigned 32-bit integer components.

UShort 41

Indicates an unsigned 16-bit integer.

UShort2 42

Indicates a value that contains two unsigned 16-bit integer components.

UShort3 43

Indicates a value that contains three unsigned 16-bit integer components.

UShort4 44

Indicates a value that contains four unsigned 16-bit integer components.

Applies to