Vulkan: fixed creating SDL_PIXELFORMAT_P010 textures
parent
f99143f437
commit
81608ad077
|
@ -404,6 +404,8 @@ static VkFormat SDLPixelFormatToVkTextureFormat(Uint32 format, Uint32 colorspace
|
||||||
case SDL_PIXELFORMAT_NV12: /* Y plane */
|
case SDL_PIXELFORMAT_NV12: /* Y plane */
|
||||||
case SDL_PIXELFORMAT_NV21: /* Y plane */
|
case SDL_PIXELFORMAT_NV21: /* Y plane */
|
||||||
return VK_FORMAT_R8_UNORM;
|
return VK_FORMAT_R8_UNORM;
|
||||||
|
case SDL_PIXELFORMAT_P010:
|
||||||
|
return VK_FORMAT_R16_UNORM;
|
||||||
default:
|
default:
|
||||||
return VK_FORMAT_UNDEFINED;
|
return VK_FORMAT_UNDEFINED;
|
||||||
}
|
}
|
||||||
|
@ -2408,7 +2410,7 @@ static int VULKAN_CreateTexture(SDL_Renderer *renderer, SDL_Texture *texture, SD
|
||||||
texture->format == SDL_PIXELFORMAT_P010) {
|
texture->format == SDL_PIXELFORMAT_P010) {
|
||||||
int bits_per_pixel;
|
int bits_per_pixel;
|
||||||
VkFormat uvFormat = VK_FORMAT_R8G8_UNORM;
|
VkFormat uvFormat = VK_FORMAT_R8G8_UNORM;
|
||||||
if (texture->format == SDL_PIXELFORMAT_P010 || texture->format == SDL_PIXELFORMAT_P016) {
|
if (texture->format == SDL_PIXELFORMAT_P010) {
|
||||||
uvFormat = VK_FORMAT_R16G16_UNORM;
|
uvFormat = VK_FORMAT_R16G16_UNORM;
|
||||||
}
|
}
|
||||||
textureData->nv12 = SDL_TRUE;
|
textureData->nv12 = SDL_TRUE;
|
||||||
|
@ -3220,7 +3222,7 @@ static VkDescriptorSet VULKAN_AllocateDescriptorSet(SDL_Renderer *renderer, VULK
|
||||||
}
|
}
|
||||||
|
|
||||||
uint32_t startImageViews = descriptorCount;
|
uint32_t startImageViews = descriptorCount;
|
||||||
for (uint32_t i = 0; i < 3 && imageViewCount > 0; i++) {
|
for (int i = 0; i < 3 && imageViewCount > 0; i++) {
|
||||||
descriptorCount++;
|
descriptorCount++;
|
||||||
imageDescriptors[i].imageLayout = VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL;
|
imageDescriptors[i].imageLayout = VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL;
|
||||||
/* There are up to 3 images in the shader, if we haven't specified that many, duplicate the first
|
/* There are up to 3 images in the shader, if we haven't specified that many, duplicate the first
|
||||||
|
|
Loading…
Reference in New Issue