|
@@ -1239,8 +1239,6 @@ SDL_Texture *SDL_CreateTextureWithProperties(SDL_Renderer *renderer, SDL_Propert
|
|
|
int w = (int)SDL_GetNumberProperty(props, SDL_PROP_TEXTURE_CREATE_WIDTH_NUMBER, 0);
|
|
|
int h = (int)SDL_GetNumberProperty(props, SDL_PROP_TEXTURE_CREATE_HEIGHT_NUMBER, 0);
|
|
|
SDL_Colorspace default_colorspace;
|
|
|
- float SDR_white_point_default = 1.0f;
|
|
|
- float HDR_headroom_default = 1.0f;
|
|
|
SDL_bool texture_is_fourcc_and_target;
|
|
|
|
|
|
CHECK_RENDERER_MAGIC(renderer, NULL);
|
|
@@ -1298,14 +1296,8 @@ SDL_Texture *SDL_CreateTextureWithProperties(SDL_Renderer *renderer, SDL_Propert
|
|
|
}
|
|
|
renderer->textures = texture;
|
|
|
|
|
|
- if (SDL_COLORSPACETRANSFER(texture->colorspace) == SDL_TRANSFER_CHARACTERISTICS_PQ) {
|
|
|
- SDR_white_point_default = 100.0f;
|
|
|
- HDR_headroom_default = 4.0f;
|
|
|
- } else if (SDL_COLORSPACETRANSFER(texture->colorspace) == SDL_TRANSFER_CHARACTERISTICS_LINEAR) {
|
|
|
- HDR_headroom_default = 0.0f;
|
|
|
- }
|
|
|
- texture->SDR_white_point = SDL_GetFloatProperty(props, SDL_PROP_TEXTURE_CREATE_SDR_WHITE_POINT_FLOAT, SDR_white_point_default);
|
|
|
- texture->HDR_headroom = SDL_GetFloatProperty(props, SDL_PROP_TEXTURE_CREATE_HDR_HEADROOM_FLOAT, HDR_headroom_default);
|
|
|
+ texture->SDR_white_point = SDL_GetFloatProperty(props, SDL_PROP_TEXTURE_CREATE_SDR_WHITE_POINT_FLOAT, SDL_GetDefaultSDRWhitePoint(texture->colorspace));
|
|
|
+ texture->HDR_headroom = SDL_GetFloatProperty(props, SDL_PROP_TEXTURE_CREATE_HDR_HEADROOM_FLOAT, SDL_GetDefaultHDRHeadroom(texture->colorspace));
|
|
|
|
|
|
/* FOURCC format cannot be used directly by renderer back-ends for target texture */
|
|
|
texture_is_fourcc_and_target = (access == SDL_TEXTUREACCESS_TARGET && SDL_ISPIXELFORMAT_FOURCC(format));
|