Revision: 16260
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=16260
Author:   unclezeiv
Date:     2008-08-26 17:35:54 +0200 (Tue, 26 Aug 2008)

Log Message:
-----------
Just realized, thanks to renderdemon, that World > Range affects all lights, 
not only the environment lighting (sorry!). As a consequence of this, added a 
slider to control a multiplicative factor for environment lighting.

Modified Paths:
--------------
    branches/soc-2008-unclezeiv/source/blender/blenloader/intern/readfile.c
    branches/soc-2008-unclezeiv/source/blender/makesdna/DNA_scene_types.h
    branches/soc-2008-unclezeiv/source/blender/render/intern/source/lightcuts.c
    branches/soc-2008-unclezeiv/source/blender/src/buttons_scene.c

Modified: 
branches/soc-2008-unclezeiv/source/blender/blenloader/intern/readfile.c
===================================================================
--- branches/soc-2008-unclezeiv/source/blender/blenloader/intern/readfile.c     
2008-08-26 14:58:33 UTC (rev 16259)
+++ branches/soc-2008-unclezeiv/source/blender/blenloader/intern/readfile.c     
2008-08-26 15:35:54 UTC (rev 16260)
@@ -7784,6 +7784,8 @@
                                        r->lightcuts_indir_dist= 5.0f;
                                if(r->lightcuts_color_weight==0)
                                        r->lightcuts_color_weight= 1;
+                               if(r->lightcuts_env_map_fac==0.0f)
+                                       r->lightcuts_env_map_fac= 1.0f;
                        }
                        
                        sce= sce->id.next;

Modified: branches/soc-2008-unclezeiv/source/blender/makesdna/DNA_scene_types.h
===================================================================
--- branches/soc-2008-unclezeiv/source/blender/makesdna/DNA_scene_types.h       
2008-08-26 14:58:33 UTC (rev 16259)
+++ branches/soc-2008-unclezeiv/source/blender/makesdna/DNA_scene_types.h       
2008-08-26 15:35:54 UTC (rev 16260)
@@ -322,6 +322,8 @@
        short lightcuts_options;
        short lightcuts_color_weight;
        float lightcuts_indir_dist;
+       float lightcuts_env_map_fac;
+       int lightcuts_pad;
        int lightcuts_debug_options;
 } RenderData;
 

Modified: 
branches/soc-2008-unclezeiv/source/blender/render/intern/source/lightcuts.c
===================================================================
--- branches/soc-2008-unclezeiv/source/blender/render/intern/source/lightcuts.c 
2008-08-26 14:58:33 UTC (rev 16259)
+++ branches/soc-2008-unclezeiv/source/blender/render/intern/source/lightcuts.c 
2008-08-26 15:35:54 UTC (rev 16260)
@@ -891,7 +891,7 @@
 }
 
 
-static void convert_environment_map(Render *re, LightcutsData *lcd, int n)
+static void convert_environment_map(Render *re, LightcutsData *lcd, int n, 
float fac)
 {
        GroupObject *gonew;
        LampRen *lar;
@@ -969,7 +969,7 @@
                 */
                
                /* please note: you can control this factor via Shading > World 
> Range */
-               lar->energy= M_PI / (float)n;
+               lar->energy= fac * M_PI / (float)n;
                lar->r= col[0] * lar->energy;
                lar->g= col[1] * lar->energy;
                lar->b= col[2] * lar->energy;
@@ -1653,7 +1653,7 @@
        /* light conversion */
        
        if (lcd->options & LC_OPT_ENV_LIGHT && re->r.lightcuts_env_map > 0)
-               convert_environment_map(re, lcd, re->r.lightcuts_env_map);
+               convert_environment_map(re, lcd, re->r.lightcuts_env_map, 
re->r.lightcuts_env_map_fac);
 
        for(go=lights->first; go; go= go->next) {
                lar= go->lampren;

Modified: branches/soc-2008-unclezeiv/source/blender/src/buttons_scene.c
===================================================================
--- branches/soc-2008-unclezeiv/source/blender/src/buttons_scene.c      
2008-08-26 14:58:33 UTC (rev 16259)
+++ branches/soc-2008-unclezeiv/source/blender/src/buttons_scene.c      
2008-08-26 15:35:54 UTC (rev 16260)
@@ -3457,7 +3457,8 @@
        uiBlockBeginAlign(block);
        uiDefButI(block, NUM, B_DIFF, "Area lights:", 0, -54, 192, 20, 
&G.scene->r.lightcuts_area_lights, 0, 100000, 0, 0, "The number of point lights 
generated for all the area lights");
        uiDefButBitS(block, TOG, 0x8, B_DIFF, "Enable", 0, -76, 31, 20, 
&G.scene->r.lightcuts_options, 0, 0, 0, 0, "Enable environment map lighting");
-       uiDefButS(block, NUM, B_DIFF, "Environment map:", 33, -76, 192-33, 20, 
&G.scene->r.lightcuts_env_map, 0, 20000, 0, 0, "How many point lights are used 
to convert the environment map");
+       uiDefButS(block, NUM, B_DIFF, "Envmap:", 33, -76, 192-33-64, 20, 
&G.scene->r.lightcuts_env_map, 0, 20000, 0, 0, "How many point lights are used 
to convert the environment map");
+       uiDefButF(block, NUM, B_DIFF, "Fac:", 128, -76, 64, 20, 
&G.scene->r.lightcuts_env_map_fac, 0.0f, 100.0f, 0, 0, "Intensity of 
environment map");
        uiBlockEndAlign(block);
        
        uiBlockBeginAlign(block);


_______________________________________________
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to