| 164 | return descriptor_type == VK_DESCRIPTOR_TYPE_STORAGE_BUFFER || |
| 165 | descriptor_type == VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER || is_dynamic_buffer_descriptor_type(descriptor_type); |
| 166 | } |
| 167 | |
| 168 | int32_t get_bits_per_pixel(VkFormat format) |
| 169 | { |
| 170 | switch (format) |
| 171 | { |
| 172 | case VK_FORMAT_R4G4_UNORM_PACK8: |
| 173 | return 8; |
| 174 | case VK_FORMAT_R4G4B4A4_UNORM_PACK16: |
| 175 | case VK_FORMAT_B4G4R4A4_UNORM_PACK16: |
| 176 | case VK_FORMAT_R5G6B5_UNORM_PACK16: |
| 177 | case VK_FORMAT_B5G6R5_UNORM_PACK16: |
| 178 | case VK_FORMAT_R5G5B5A1_UNORM_PACK16: |
| 179 | case VK_FORMAT_B5G5R5A1_UNORM_PACK16: |
| 180 | case VK_FORMAT_A1R5G5B5_UNORM_PACK16: |
| 181 | return 16; |
| 182 | case VK_FORMAT_R8_UNORM: |
| 183 | case VK_FORMAT_R8_SNORM: |
| 184 | case VK_FORMAT_R8_USCALED: |
| 185 | case VK_FORMAT_R8_SSCALED: |
| 186 | case VK_FORMAT_R8_UINT: |
| 187 | case VK_FORMAT_R8_SINT: |
| 188 | case VK_FORMAT_R8_SRGB: |
| 189 | return 8; |
| 190 | case VK_FORMAT_R8G8_UNORM: |
| 191 | case VK_FORMAT_R8G8_SNORM: |
| 192 | case VK_FORMAT_R8G8_USCALED: |
| 193 | case VK_FORMAT_R8G8_SSCALED: |
| 194 | case VK_FORMAT_R8G8_UINT: |
| 195 | case VK_FORMAT_R8G8_SINT: |
| 196 | case VK_FORMAT_R8G8_SRGB: |
| 197 | return 16; |
| 198 | case VK_FORMAT_R8G8B8_UNORM: |
| 199 | case VK_FORMAT_R8G8B8_SNORM: |
| 200 | case VK_FORMAT_R8G8B8_USCALED: |
| 201 | case VK_FORMAT_R8G8B8_SSCALED: |
| 202 | case VK_FORMAT_R8G8B8_UINT: |
| 203 | case VK_FORMAT_R8G8B8_SINT: |
| 204 | case VK_FORMAT_R8G8B8_SRGB: |
| 205 | case VK_FORMAT_B8G8R8_UNORM: |
| 206 | case VK_FORMAT_B8G8R8_SNORM: |
| 207 | case VK_FORMAT_B8G8R8_USCALED: |
| 208 | case VK_FORMAT_B8G8R8_SSCALED: |
| 209 | case VK_FORMAT_B8G8R8_UINT: |
| 210 | case VK_FORMAT_B8G8R8_SINT: |
| 211 | case VK_FORMAT_B8G8R8_SRGB: |
| 212 | return 24; |
| 213 | case VK_FORMAT_R8G8B8A8_UNORM: |
| 214 | case VK_FORMAT_R8G8B8A8_SNORM: |
| 215 | case VK_FORMAT_R8G8B8A8_USCALED: |
| 216 | case VK_FORMAT_R8G8B8A8_SSCALED: |
| 217 | case VK_FORMAT_R8G8B8A8_UINT: |
| 218 | case VK_FORMAT_R8G8B8A8_SINT: |
| 219 | case VK_FORMAT_R8G8B8A8_SRGB: |
| 220 | case VK_FORMAT_B8G8R8A8_UNORM: |
| 221 | case VK_FORMAT_B8G8R8A8_SNORM: |
| 222 | case VK_FORMAT_B8G8R8A8_USCALED: |
| 223 | case VK_FORMAT_B8G8R8A8_SSCALED: |