[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