From 3173232bfa1e6878088cdbb0134fe709a1f757bd Mon Sep 17 00:00:00 2001 From: Matt Ebb Date: Thu, 17 Jun 2010 07:20:12 +0000 Subject: Fix [#22610] Alpha problem with textureswhen Brightness > 1 or Contrast < 1 * Enabled premultiplication for packed images * Added pack/unpack operator to image template * Moved brightness/contrast corrections to after de-premultiplication in image texture sampling --- source/blender/blenkernel/intern/image.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'source/blender/blenkernel/intern/image.c') diff --git a/source/blender/blenkernel/intern/image.c b/source/blender/blenkernel/intern/image.c index ef95139abda..f06e9302a60 100644 --- a/source/blender/blenkernel/intern/image.c +++ b/source/blender/blenkernel/intern/image.c @@ -1715,7 +1715,10 @@ static ImBuf *image_load_image_file(Image *ima, ImageUser *iuser, int cfra) /* is there a PackedFile with this image ? */ if (ima->packedfile) { - ibuf = IMB_ibImageFromMemory((unsigned char*)ima->packedfile->data, ima->packedfile->size, IB_rect|IB_multilayer); + flag = IB_rect|IB_multilayer; + if(ima->flag & IMA_DO_PREMUL) flag |= IB_premul; + + ibuf = IMB_ibImageFromMemory((unsigned char*)ima->packedfile->data, ima->packedfile->size, flag); } else { flag= IB_rect|IB_multilayer|IB_metadata; -- cgit v1.2.3