![](/i/fill.gif) |
![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
I'm far from thinking it is bug but I just don't understand this behaviour.
Since it is my first try with such simple "assumed_gamma" I post it here. Here
is description of my problem (I play with POV 3.5).
I have designed sky. It takes some time to render so I decided to create
enviroment map (is it well named?) and use it in second image. So I've added
spherical camera and traced image to 5000x5000 PNG. Then I have used 'Basic
scene' template from Insert menu. I've removed all objects, light, camera was
replaced and sky_sphere was used my PNG as image_map. But render looks lighter.
I figured out there were assumed_gamma in this template equal 1.0. I hadn't
assumed_gamma in my original scene so I checked in the documentation what is
default value of it. In 6.11 contains: 'assumed_gamma : Display_Gamma'. So I
checked what is Display_Gamma. 5.2.2.2.1 : 'If the Display_Gamma keyword does
not appear in the INI file, POV-Ray assumes that the display gamma is 2.2'. And
2.2 was reported by output of renderer. So to duplicate effect I wrote into new
scenefile global_settings{assumed_gamma 2.2} but render was still wrong. Then I
completly removed assumed_gamma from script and render was ok even if renderer
reported 2.2 in output during render.
--
#declare _=function(a,b,x){((a^2)+(b^2))^.5-x}#default {pigment{color rgb 1}}
union{plane{y,-3}plane{-x,-3}finish{reflection 1 ambient 0}}isosurface{ //ABX
function{_(x-2,y,1)|_((x+y)*.7,z,.1)|_((x+y+2)*.7,z,.1)|_(x/2+y*.8+1.5,z,.1)}
contained_by{box{<0,-3,-.1>,<3,0,.1>}}translate z*15finish{ambient 1}}//POV35
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Render the sky map image without assumed_gamma (linear).
Then in the scene where the image map is used put
assumed_gamma 1.
If both scenes are gamma corrected (assumed_gamma 1) then
gamma is applied twise to the image map. Same applies to
using photographs as image maps. Gamma correction should
be be removed by applying 1/gamma correction before using
them as image maps in scenes with assumed_gamma 1.
_____________
Kari Kivisalo
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
: used my PNG as image_map. But render looks lighter.
There's a bug in the current 3.5 beta. When writing to a PNG file, the wrong
gamma correction value is written. AFAIK this has been fixed for the next beta.
--
#macro N(D,I)#if(I<6)cylinder{M()#local D[I]=div(D[I],104);M().5,2pigment{
rgb M()}}N(D,(D[I]>99?I:I+1))#end#end#macro M()<mod(D[I],13)-6,mod(div(D[I
],13),8)-3,10>#end blob{N(array[6]{11117333955,
7382340,3358,3900569407,970,4254934330},0)}// - Warp -
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On Mon, 19 Nov 2001 12:14:11 +0200, Kari Kivisalo <ray### [at] engineer com> wrote:
> Render the sky map image without assumed_gamma (linear).
> Then in the scene where the image map is used put
> assumed_gamma 1.
And this not work, but Warp said it could be result of bug. I wait for new beta.
ABX
--
#declare _=function(a,b,x){((a^2)+(b^2))^.5-x}#default {pigment{color rgb 1}}
union{plane{y,-3}plane{-x,-3}finish{reflection 1 ambient 0}}isosurface{ //ABX
function{_(x-2,y,1)|_((x+y)*.7,z,.1)|_((x+y+2)*.7,z,.1)|_(x/2+y*.8+1.5,z,.1)}
contained_by{box{<0,-3,-.1>,<3,0,.1>}}translate z*15finish{ambient 1}}//POV35
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On 19 Nov 2001 05:15:30 -0500, Warp <war### [at] tag povray org> wrote:
> There's a bug in the current 3.5 beta. When writing to a PNG file, the wrong
>gamma correction value is written. AFAIK this has been fixed for the next beta.
Thanks for clarification. I wait.
ABX
--
#declare _=function(a,b,x){((a^2)+(b^2))^.5-x}#default {pigment{color rgb 1}}
union{plane{y,-3}plane{-x,-3}finish{reflection 1 ambient 0}}isosurface{ //ABX
function{_(x-2,y,1)|_((x+y)*.7,z,.1)|_((x+y+2)*.7,z,.1)|_(x/2+y*.8+1.5,z,.1)}
contained_by{box{<0,-3,-.1>,<3,0,.1>}}translate z*15finish{ambient 1}}//POV35
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
>
> On Mon, 19 Nov 2001 12:14:11 +0200, Kari Kivisalo <ray### [at] engineer com> wrote:
> > Render the sky map image without assumed_gamma (linear).
> > Then in the scene where the image map is used put
> > assumed_gamma 1.
>
> And this not work
I just tested it and it works.
_____________
Kari Kivisalo
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On Mon, 19 Nov 2001 12:29:35 +0200, Kari Kivisalo <ray### [at] engineer com> wrote:
> > And this not work
>
> I just tested it and it works.
In my case
original scene, perspective camera, no assumed gamma -> 1.PNG
original scene, spherical camera, no assumed gama -> 2.PNG
new scene, perspective camera, 2.PNG as sky, no assumed gamma -> 3.PNG
new scene, perspective camera, 2.PNG as sky, assumed gamma 1.0 -> 4.PNG
new scene, perspective camera, 2.PNG as sky, assumed gamma 2.2 -> 5.PNG
1.PNG = 3.PNG
1.PNG != 4.PNG
1.PNG != 5.PNG
I compare image when POV-Ray displays it. Not with other software.
ABX
--
#declare _=function(a,b,x){((a^2)+(b^2))^.5-x}#default {pigment{color rgb 1}}
union{plane{y,-3}plane{-x,-3}finish{reflection 1 ambient 0}}isosurface{ //ABX
function{_(x-2,y,1)|_((x+y)*.7,z,.1)|_((x+y+2)*.7,z,.1)|_(x/2+y*.8+1.5,z,.1)}
contained_by{box{<0,-3,-.1>,<3,0,.1>}}translate z*15finish{ambient 1}}//POV35
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
>
> original scene, perspective camera, no assumed gamma -> 1.PNG
> original scene, spherical camera, no assumed gama -> 2.PNG
> new scene, perspective camera, 2.PNG as sky, no assumed gamma -> 3.PNG
> new scene, perspective camera, 2.PNG as sky, assumed gamma 1.0 -> 4.PNG
> new scene, perspective camera, 2.PNG as sky, assumed gamma 2.2 -> 5.PNG
>
> 1.PNG = 3.PNG
> 1.PNG != 4.PNG
> 1.PNG != 5.PNG
It's supposed to go like this:
> original scene, perspective camera, assumed_gamma 1 -> 1.PNG
> original scene, spherical camera, no assumed gama -> 2.PNG
> new scene, perspective camera, 2.PNG as sky, assumed gamma 1.0 -> 4.PNG
> 1.PNG = 4.PNG
If you wan't the final image gamma corrected you must design also
the sky as gamma corrected.
_____________
Kari Kivisalo
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On Mon, 19 Nov 2001 12:59:47 +0200, Kari Kivisalo <ray### [at] engineer com> wrote:
> > 1.PNG = 3.PNG
> > 1.PNG != 4.PNG
> > 1.PNG != 5.PNG
>
> It's supposed to go like this:
> If you wan't the final image gamma corrected you must design also
> the sky as gamma corrected.
That's what I don't understand. If I don't specify assumed_gamma I expect some
default value of it. And documentation says (6.11) it has default value equal to
display_gamma which is default equal 2.2 on windows platform. So I expect no
assumed gamma is equvalent for assumed_gamma 2.2 (eventually 1.0 as linear
copying of sky).
ABX
--
#declare _=function(a,b,x){((a^2)+(b^2))^.5-x}#default {pigment{color rgb 1}}
union{plane{y,-3}plane{-x,-3}finish{reflection 1 ambient 0}}isosurface{ //ABX
function{_(x-2,y,1)|_((x+y)*.7,z,.1)|_((x+y+2)*.7,z,.1)|_(x/2+y*.8+1.5,z,.1)}
contained_by{box{<0,-3,-.1>,<3,0,.1>}}translate z*15finish{ambient 1}}//POV35
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
>
> That's what I don't understand.
This is how gamma in povray works.
no assumed_gamma in scene
No gamma correction is applied to output file.
assumed_gamma 1
Gamma Display_Gamma is applied to output file.
If Display_Gamma is not specified, 2.2 is used.
assumed_gamma G
Gamma Display_Gamma/G is applied to output file.
If Display_Gamma is not specified, 2.2/G is used.
Recommended value for assumed_gamma is 1.
_____________
Kari Kivisalo
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |