mirror of
https://github.com/love2d/love.git
synced 2026-08-18 11:44:15 +02:00
ImageData can track whether they're meant to be loaded into a Texture with a non-sRGB format when gamma correct rendering is enabled.
Fixes #1556. * Add ImageData/CompressedImageData:setLinear and ImageData/CompressedImageData:isLinear. The flag is used as a hint when loading a texture from the data to determine if the format should not be treated as sRGB-encoded. The 'linear' flag in newImage overrides this. * love.graphics.readbackTexture automatically sets the linear flag on ImageData it returns when the texture's format is linear. This allows an ImageData generated via readback to be fed back into a new Texture and the format will match the original Canvas. * Also clean up some image decoding code.
This commit is contained in:
@@ -103,6 +103,7 @@ protected:
|
||||
StrongRef<love::image::ImageData> imageData;
|
||||
Rect rect = {};
|
||||
PixelFormat textureFormat = PIXELFORMAT_UNKNOWN;
|
||||
bool isFormatLinear = false;
|
||||
int imageDataX = 0;
|
||||
int imageDataY = 0;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user