From 5eeb1fbbcfd4105f77c1f9bf9d1374009988e259 Mon Sep 17 00:00:00 2001 From: Joe Hager Date: Fri, 12 Oct 2007 01:11:46 +0000 Subject: [PATCH] Modify static_set_gamma() method, due to code merge error. --- panda/src/osxdisplay/osxGraphicsStateGuardian.cxx | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/panda/src/osxdisplay/osxGraphicsStateGuardian.cxx b/panda/src/osxdisplay/osxGraphicsStateGuardian.cxx index e507c21d0a..fb8b7a6ef1 100644 --- a/panda/src/osxdisplay/osxGraphicsStateGuardian.cxx +++ b/panda/src/osxdisplay/osxGraphicsStateGuardian.cxx @@ -389,7 +389,7 @@ describe_pixel_format(FrameBufferProperties &fb_props) { bool osxGraphicsStateGuardian:: static_set_gamma(float gamma) { bool set; - + CGDisplayRestoreColorSyncSettings(); set = false; CGGammaValue gOriginalRedTable[ 256 ]; @@ -408,16 +408,23 @@ static_set_gamma(float gamma) { short j, i; short y[3]; + for (j = 0; j < 3; j++) + { + y[j] = 255; + }; + gamma = (2 * gamma) + 1.0; y[0] = 256 * gamma; y[1] = 256 * gamma; y[2] = 256 * gamma; + for (i = 0; i < 256; i++) + { redTable[i] = gOriginalRedTable[ i ] * (y[ 0 ] ) / 256; greenTable[ i ] = gOriginalGreenTable[ i ] * (y[ 1 ] ) / 256; blueTable[ i ] = gOriginalBlueTable[ i ] * (y[ 2 ] ) / 256; - + }; cgErr = CGSetDisplayTransferByTable( 0, 256, redTable, greenTable, blueTable); if (cgErr == 0){ @@ -425,6 +432,7 @@ static_set_gamma(float gamma) { } return set; + } ////////////////////////////////////////////////////////////////////