12 return vk::Format::eUndefined;
17 if (input.
bit_width == 8 *
sizeof(
float)) {
20 return vk::Format::eR32Sfloat;
22 return vk::Format::eR32G32Sfloat;
24 return vk::Format::eR32G32B32Sfloat;
26 return vk::Format::eR32G32B32A32Sfloat;
29 return vk::Format::eUndefined;
32 if (input.
bit_width == 8 *
sizeof(
float) / 2) {
35 return vk::Format::eR16Sfloat;
37 return vk::Format::eR16G16Sfloat;
39 return vk::Format::eR16G16B16Sfloat;
41 return vk::Format::eR16G16B16A16Sfloat;
44 return vk::Format::eUndefined;
48 return vk::Format::eUndefined;
52 return vk::Format::eR8Uint;
54 return vk::Format::eUndefined;
57 if (input.
bit_width == 8 *
sizeof(
char)) {
60 return vk::Format::eR8Sint;
62 return vk::Format::eR8G8Sint;
64 return vk::Format::eR8G8B8Sint;
66 return vk::Format::eR8G8B8A8Sint;
69 return vk::Format::eUndefined;
72 if (input.
bit_width == 8 *
sizeof(
char)) {
75 return vk::Format::eR8Uint;
77 return vk::Format::eR8G8Uint;
79 return vk::Format::eR8G8B8Uint;
81 return vk::Format::eR8G8B8A8Uint;
84 return vk::Format::eUndefined;
87 if (input.
bit_width == 8 *
sizeof(int16_t)) {
90 return vk::Format::eR16Sint;
92 return vk::Format::eR16G16Sint;
94 return vk::Format::eR16G16B16Sint;
96 return vk::Format::eR16G16B16A16Sint;
99 return vk::Format::eUndefined;
102 if (input.
bit_width == 8 *
sizeof(uint16_t)) {
105 return vk::Format::eR16Uint;
107 return vk::Format::eR16G16Uint;
109 return vk::Format::eR16G16B16Uint;
111 return vk::Format::eR16G16B16A16Uint;
114 return vk::Format::eUndefined;
117 if (input.
bit_width == 8 *
sizeof(int32_t)) {
120 return vk::Format::eR32Sint;
122 return vk::Format::eR32G32Sint;
124 return vk::Format::eR32G32B32Sint;
126 return vk::Format::eR32G32B32A32Sint;
129 return vk::Format::eUndefined;
132 if (input.
bit_width == 8 *
sizeof(uint32_t)) {
135 return vk::Format::eR32Uint;
137 return vk::Format::eR32G32Uint;
139 return vk::Format::eR32G32B32Uint;
141 return vk::Format::eR32G32B32A32Uint;
144 return vk::Format::eUndefined;
148 return vk::Format::eUndefined;
152 return vk::Format::eUndefined;
161 return vk::Format::eUndefined;