|
![](/i/fill.gif) |
>>> To simplify the things, I want to have one pigment for OpenGL
>>> emissive color and another pigment for OpenGL diffuse color.
>>> POV-Ray should compute the lighting on both of them and the
>>> final color would be sum of these. Is it possible to do
>>> this in POV-Ray?
>>
>> If I get it correctly:
>> OpenGL povray
>> =========+=========
>> emissive | ambient
>> diffuse | diffuse
>>
>> To perform a sum, use the average pigment with relevant map
>>
>>> http://wiki.povray.org/content/Documentation:Reference_Section_5.3#Average
>
> Things are more difficult:
>
> OpenGL povray
> ===============+================
> ambient COLOR | ambient COLOR
> diffuse COLOR | diffuse float
> specular COLOR | specular float
> emission COLOR | (no equivalent, but can be emulated by ambient)
Add this in your global_settings block:
ambient_lights Ambient_COLOR
Now, any ambient component of your finish will be MULTIPLYED by that
value. it will effectively colour the shadowed areas. With version 3.7,
it will be disabled in a radiosity scene.
For your diffuse modification you can:
1 - precompute the desired pigment OR
2 - use layered pigments with a plain filtering pigment of the desired
colour over your base texture.
If you add metallic to your finish, the specular highlights will be
coloured with the pigment. You can use a float after metallic to adjust
that colouring.
Use POV-Ray 3.7. It have an emission COLOR component for your finish.
>
> In OpenGL, ambient color is real color used for the computation of ambient light
> contribution to the final color, while ambient on povray side is just pigment
> filter.
>
> In OpenGL diffuse, specular and emission are all colors that can be completely
> different colors while povray's diffuse and specular is just float multiplying
> pigment color.
>
> As a result, OpenGL allows to specify for example blue diffuse color - e.g.
> object is blue when lit by the light coming from the scene, and red ambient
> light (e.g. surface shines red, provided that there is global ambient light in
> the scene).
>
> You may wonder why I need this, but it would allow to correctly show all the
> models that are used in OpenSceneGraph, OpenGL, DirectX, and real-time graphics
> in general.
>
> Thanks for any good advice,
> John
>
>
Just remember that those separated components are there to get faster
real time graphics at the cost of geting away from actual physicaly
correct lighting.
Post a reply to this message
|
![](/i/fill.gif) |