POV-Ray : Newsgroups : povray.general : assumed_gamma : Re: assumed_gamma Server Time
4 Aug 2024 16:10:16 EDT (-0400)
  Re: assumed_gamma  
From: Slashdolt
Date: 6 Jun 2003 13:23:47
Message: <3ee0ce23$1@news.povray.org>
Very interesting suggestion!  Thanks!

-- 
Slash
"Ive" <ive### [at] lilysoftcom> wrote in message news:3edf8beb@news.povray.org...
>
> Just to make it clear, I was talkin' all the time about the display_gamma
> setting that should be in the povray ini-file. The assumed gamma in the
> global settings statement of your scene file should be 1.0 as noted in the
> docs to make sure PoV does lighting (and also radiosity) calculation
within
> a linear color space (thats the way it is in the "real world").
>
>
> > Howerver, if you look at <povray>\scenes\incdemo\woods\woods2.pov, they
set
> > the "assumed_gamma" to 2.2.  If you use assumed_gamma 1.0 for any of the
> > T_Wood textures, they are way too bright, and many look purplish.  For
that
> > reason, I generally don't use any of them, and create my own wood
textures
> > instead.
>
> Yes, because they are quite *old*. I guess some of them go back to the
time of
> DKBtrace the predecessor of PoV-Ray.
>
>
> > So...  I guess that brings me back to my original question.
> >
>
> I have done it this way:
>
> global_settings {
>   assumed_gamma 1.0
> }
>
> #declare OldGamma = 2.2;  // to compensate for old non-linear color
definitions
>
>
> // some helper macros for conversion
>
> #macro RGB(C)
>   rgb <pow(C.red, OldGamma), pow(C.green, OldGamma), pow(C.blue,
OldGamma)>
> #end
>
> #macro RGBF(C)
>   rgbf <pow(C.red, OldGamma), pow(C.green, OldGamma), pow(C.blue,
OldGamma), RGB.filter>
> #end
>
> #macro RGBT(C)
>   rgbt <pow(C.red, OldGamma), pow(C.green, OldGamma), pow(C.blue,
OldGamma), RGB.transmit>
> #end
>
>
> and then use search'n'replace to change e.g. the color statements from
woodmaps.inc like this
> this:
>
> #declare M_Wood1A =
> color_map {
>     [0.0, 0.1 color RGB(<0.88, 0.60, 0.40>)
>               color RGB(<0.88, 0.60, 0.40>)]
>     [0.1, 0.9 color RGB(<0.88, 0.60, 0.40>)
>               color RGB(<0.60, 0.30, 0.20>)]
>     [0.9, 1.0 color RGB(<0.60, 0.30, 0.20>)
>               color RGB(<0.60, 0.30, 0.20>)]
> }
>
> this is done within a few seconds and you they still work for old scenes
in the old way by setting
>
> global_settings {
>   assumed_gamma 2.0   // or whatever
> }
>
> #declare OldGamma = 1;
>
> You can even use these macros if you are so used to think in colors in the
non-linear way but want to
> put assumed_gamma 1.0 into global_setting for some reason.
>
>
> hope this helps
> -Ive
>
>
>


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.