[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [16192] branches/soc-2008-unclezeiv/source /blender: minor improvements required by testers on blenderartists:
Davide Vercelli
davide.vercelli at gmail.com
Tue Aug 19 23:13:10 CEST 2008
Revision: 16192
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=16192
Author: unclezeiv
Date: 2008-08-19 23:13:10 +0200 (Tue, 19 Aug 2008)
Log Message:
-----------
minor improvements required by testers on blenderartists:
- fixed wrong tooltips
- added default values for sliders
- added toggle to enable/disable environment lighting without having to change the slider
Modified Paths:
--------------
branches/soc-2008-unclezeiv/source/blender/blenloader/intern/readfile.c
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-19 17:08:20 UTC (rev 16191)
+++ branches/soc-2008-unclezeiv/source/blender/blenloader/intern/readfile.c 2008-08-19 21:13:10 UTC (rev 16192)
@@ -7740,6 +7740,10 @@
r->lightcuts_max_cut= 1000;
if(r->lightcuts_indir_fac<=0.0f)
r->lightcuts_indir_fac= 100.0f;
+ if(r->lightcuts_env_map<=0.0f)
+ r->lightcuts_env_map= 4096.0f;
+ if(r->lightcuts_area_lights<=0.0f)
+ r->lightcuts_area_lights= 4000.0f;
}
sce= sce->id.next;
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-19 17:08:20 UTC (rev 16191)
+++ branches/soc-2008-unclezeiv/source/blender/render/intern/source/lightcuts.c 2008-08-19 21:13:10 UTC (rev 16192)
@@ -52,6 +52,7 @@
#include "shading.h"
/* #define LIGHTCUTS_DEBUG */
+/* #define LIGHTCUTS_DEBUG_INDIR */
/* = LA_X + 1 */
#define CLUSTER_EMPTY 0
@@ -73,9 +74,10 @@
#define FALLOFF_MIX 3
#define FALLOFF_SLIDER 3
-#define LC_OPT_RANDOM_DIRS 0x01
+#define LC_OPT_FIXED_DIRS 0x01
#define LC_OPT_ONLY_INDIR 0x02
#define LC_OPT_2ND_BOUNCE 0x04
+#define LC_OPT_ENV_LIGHT 0x08
/*
* This is a table to select the "worst falloff" for a cluster, given the
@@ -1194,7 +1196,7 @@
isec.faceorig= NULL;
isec.oborig= 0;
VECCOPY(isec.start, orig->co);
- if (lcd->options & LC_OPT_RANDOM_DIRS)
+ if (!(lcd->options & LC_OPT_FIXED_DIRS))
get_cosine_weighted_random_direction(isec.vec);
else {
isec.vec[0]= 0.0f;
@@ -1230,6 +1232,11 @@
return;
}
#endif
+
+#ifdef LIGHTCUTS_DEBUG_INDIR
+ printf("PYDBG %d: %f %f %f - %f %f %f\n",
+ lev, co[0], co[1], co[2], scol[0], scol[1], scol[2]);
+#endif
lar= (LampRen *)MEM_callocN(sizeof(LampRen), "lampren");
lamp_init(re, lar);
@@ -1444,7 +1451,7 @@
/* light conversion */
- if (re->r.lightcuts_env_map > 0)
+ if (lcd->options & LC_OPT_ENV_LIGHT && re->r.lightcuts_env_map > 0)
convert_environment_map(re, lcd, re->r.lightcuts_env_map);
for(go=lights->first; go; go= go->next) {
Modified: branches/soc-2008-unclezeiv/source/blender/src/buttons_scene.c
===================================================================
--- branches/soc-2008-unclezeiv/source/blender/src/buttons_scene.c 2008-08-19 17:08:20 UTC (rev 16191)
+++ branches/soc-2008-unclezeiv/source/blender/src/buttons_scene.c 2008-08-19 21:13:10 UTC (rev 16192)
@@ -3442,18 +3442,19 @@
if(uiNewPanel(curarea, block, "Lightcuts", "Render", 640, 0, 318, 204)==0) return;
uiDefButBitI(block, TOG, R_LIGHTCUTS, B_DIFF, "Enable lightcuts", 692, 142, 192, 20, &G.scene->r.mode, 0, 0, 0, 0, "Enable lightcuts rendering");
- uiDefButBitI(block, TOG, SCE_PASS_LCFAUX, B_SET_PASS, "False color", 692, 120, 192, 20, &srl->passflag, 0, 0, 0, 0, "Deliver false color pass");
+ uiDefButBitI(block, TOG, SCE_PASS_LCFAUX, B_SET_PASS, "False color", 692, 120, 192, 20, &srl->passflag, 0, 0, 0, 0, "(Debug option) Deliver false color pass");
uiDefButF(block, NUM, B_DIFF, "Max error:", 692, 98, 96, 20, &G.scene->r.lightcuts_max_error, 0.001, 1.0, 0, 0, "The maximum allowed error rate");
- uiDefButI(block, NUM, B_DIFF, "Max cut:", 692+96, 98, 96, 20, &G.scene->r.lightcuts_max_cut, 0, 5000, 0, 0, "The maximum size of the cut");
+ uiDefButI(block, NUM, B_DIFF, "Max cut:", 692+96, 98, 96, 20, &G.scene->r.lightcuts_max_cut, 0, 5000, 0, 0, "The maximum size of the cut (higher values increase rendering times for occluded areas)");
uiDefButI(block, NUM, B_DIFF, "Area lights:", 692, 76, 192, 20, &G.scene->r.lightcuts_area_lights, 0, 100000, 0, 0, "The number of point lights generated for all the area lights");
- uiDefButS(block, NUM, B_DIFF, "Environment map:", 692, 54, 192, 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, "Indirect lights:", 692, 32, 128, 20, &G.scene->r.lightcuts_indirect, 0, 20, 0, 0, "Number of indirect lights per direct light");
+ uiDefButBitS(block, TOG, 0x8, B_DIFF, "Enable", 692, 54, 32, 20, &G.scene->r.lightcuts_options, 0, 0, 0, 0, "Enable environment map lighting");
+ uiDefButS(block, NUM, B_DIFF, "Environment map:", 692+32, 54, 192-32, 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, "Indirect lights:", 692, 32, 128, 20, &G.scene->r.lightcuts_indirect, 0, 20, 0, 0, "Number of indirect lights per each direct light (currently only from area lights)");
/* TODO: yep, magic numbers, but they are going to change soon anyway */
- uiDefButBitS(block, TOG, 0x1, B_DIFF, "Rand", 692+128, 32, 64, 20, &G.scene->r.lightcuts_options, 0, 0, 0, 0, "Enable random dirs");
- uiDefButBitS(block, TOG, 0x4, B_DIFF, "2nd", 692, 10, 128, 20, &G.scene->r.lightcuts_options, 0, 0, 0, 0, "Enable random dirs");
- uiDefButBitS(block, TOG, 0x2, B_DIFF, "Only", 692+128, 10, 64, 20, &G.scene->r.lightcuts_options, 0, 0, 0, 0, "Only indirect");
- uiDefButF(block, NUM, B_DIFF, "Indirect 1/fac:", 692, 10-22, 192, 20, &G.scene->r.lightcuts_indir_fac, 1.0, 100000.0, 0, 0, "Indirect lighting factor: raise to reduce intensity");
+ uiDefButBitS(block, TOG, 0x1, B_DIFF, "Fixed", 692+128, 32, 64, 20, &G.scene->r.lightcuts_options, 0, 0, 0, 0, "(Debug option) Enable fixed directions for indirect lighting");
+ uiDefButBitS(block, TOG, 0x4, B_DIFF, "2nd", 692, 10, 128, 20, &G.scene->r.lightcuts_options, 0, 0, 0, 0, "Enable second bounce for indirect lighting");
+ uiDefButBitS(block, TOG, 0x2, B_DIFF, "Only", 692+128, 10, 64, 20, &G.scene->r.lightcuts_options, 0, 0, 0, 0, "Render only indirect lighting");
+ uiDefButF(block, NUM, B_DIFF, "Indirect fac:", 692, 10-22, 192, 20, &G.scene->r.lightcuts_indir_fac, 1.0, 100000.0, 0, 0, "Indirect lighting factor");
uiBlockBeginAlign(block);
uiDefButS(block, ROW, B_DIFF, "R601", 692, 10-44, 64, 20, &G.scene->r.lightcuts_color_weight, 0, 0, 0, 0, "R601 color weights: 0.299r 0.587g 0.114");
More information about the Bf-blender-cvs
mailing list