MCPcopy Create free account
hub / github.com/PacktPublishing/3D-Graphics-Rendering-Cookbook / bytesPerTexFormat

Function bytesPerTexFormat

shared/UtilsVulkan.cpp:2057–2082  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2055}
2056
2057uint32_t bytesPerTexFormat(VkFormat fmt)
2058{
2059 switch (fmt)
2060 {
2061 case VK_FORMAT_R8_SINT:
2062 case VK_FORMAT_R8_UNORM:
2063 return 1;
2064 case VK_FORMAT_R16_SFLOAT:
2065 return 2;
2066 case VK_FORMAT_R16G16_SFLOAT:
2067 return 4;
2068 case VK_FORMAT_R16G16_SNORM:
2069 return 4;
2070 case VK_FORMAT_B8G8R8A8_UNORM:
2071 return 4;
2072 case VK_FORMAT_R8G8B8A8_UNORM:
2073 return 4;
2074 case VK_FORMAT_R16G16B16A16_SFLOAT:
2075 return 4 * sizeof(uint16_t);
2076 case VK_FORMAT_R32G32B32A32_SFLOAT:
2077 return 4 * sizeof(float);
2078 default:
2079 break;
2080 }
2081 return 0;
2082}
2083
2084bool updateTextureVolume(VulkanRenderDevice& vkDev, VkImage& textureVolume, VkDeviceMemory& textureVolumeMemory, uint32_t texWidth, uint32_t texHeight, uint32_t texDepth, VkFormat texFormat, const void* volumeData, VkImageLayout sourceImageLayout)
2085{

Callers 4

updateTextureVolumeFunction · 0.85
updateTextureImageFunction · 0.85
downloadImageDataFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected