Revision: 20948
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=20948
Author:   yukishiro
Date:     2009-06-17 05:41:16 +0200 (Wed, 17 Jun 2009)

Log Message:
-----------
add a recompute button

Modified Paths:
--------------
    branches/soc-2009-yukishiro/release/ui/buttons_lightenv.py
    
branches/soc-2009-yukishiro/source/blender/editors/sculpt_paint/paint_light.c
    
branches/soc-2009-yukishiro/source/blender/editors/space_view3d/view3d_draw.c
    branches/soc-2009-yukishiro/source/blender/sh/SH_api.h
    branches/soc-2009-yukishiro/source/blender/sh/intern/compute.c

Modified: branches/soc-2009-yukishiro/release/ui/buttons_lightenv.py
===================================================================
--- branches/soc-2009-yukishiro/release/ui/buttons_lightenv.py  2009-06-17 
03:13:48 UTC (rev 20947)
+++ branches/soc-2009-yukishiro/release/ui/buttons_lightenv.py  2009-06-17 
03:41:16 UTC (rev 20948)
@@ -6,14 +6,29 @@
        __region_type__ = "WINDOW"
        __context__ = "lightenv"
 
+       def poll(self, context):
+               return context.lightenv
 
+class LIGHT_PT_compute(LightButtonsPanel):
+       __idname__= "LIGHT_PT_compute"
+       __label__ = "Compute"
+
+       def draw(self, context):
+               layout = self.layout
+               lightenv = context.lightenv
+
+               row = layout.row()
+               row.itemR(lightenv, "degree", text="Degree")
+               row.itemR(lightenv, "num_samples", text="# Samples")
+
+               row = layout.row()
+               row.itemO("PAINT_OT_light_paint_recompute", text="Recompute 
LightEnv", icon='ICON_LIGHTENV')
+
+
 class LIGHT_PT_preview(LightButtonsPanel):
        __idname__= "LIGHT_PT_preview"
        __label__ = "Preview"
 
-       def poll(self, context):
-               return context.lightenv
-
        def draw(self, context):
                layout = self.layout
 
@@ -48,6 +63,7 @@
                 scene = context.scene
                 split.template_ID(context, lightenv, "probe_image", 
new="IMAGE_OT_open")
 
+bpy.types.register(LIGHT_PT_compute)
 bpy.types.register(LIGHT_PT_preview)
 bpy.types.register(LIGHT_PT_type)
 bpy.types.register(LIGHT_PT_probe_image)

Modified: 
branches/soc-2009-yukishiro/source/blender/editors/sculpt_paint/paint_light.c
===================================================================
--- 
branches/soc-2009-yukishiro/source/blender/editors/sculpt_paint/paint_light.c   
    2009-06-17 03:13:48 UTC (rev 20947)
+++ 
branches/soc-2009-yukishiro/source/blender/editors/sculpt_paint/paint_light.c   
    2009-06-17 03:41:16 UTC (rev 20948)
@@ -79,10 +79,12 @@
 
 #include "paint_intern.h"
 
+extern CustomDataMask get_viewedit_datamask(bScreen *screen); //defined in 
view3d_draw.c
+
 /******************* computation job ****************/
 typedef struct ShJob {
        Scene *scene;
-        View3D *v3d;
+       unsigned int mask;
        short recompute;
        short *stop;
        short *do_update;
@@ -106,7 +108,7 @@
         if (sj->scene->lightenv == NULL) 
                add_lightenv(sj->scene, "LightEnv");
 
-        SH_ComputeSceneCoefficients(sj->scene, sj->v3d, sj->recompute);
+        SH_ComputeSceneCoefficients(sj->scene, sj->mask, sj->recompute);
 }
 
 
@@ -128,7 +130,7 @@
        /* job custom data */
        sj= MEM_callocN(sizeof(ShJob), "SH job");
        sj->scene= scene;
-       sj->v3d= CTX_wm_view3d(C);
+       sj->mask= get_viewedit_datamask(CTX_wm_screen(C));
        sj->recompute= recompute;
 
        /* setup job */

Modified: 
branches/soc-2009-yukishiro/source/blender/editors/space_view3d/view3d_draw.c
===================================================================
--- 
branches/soc-2009-yukishiro/source/blender/editors/space_view3d/view3d_draw.c   
    2009-06-17 03:13:48 UTC (rev 20947)
+++ 
branches/soc-2009-yukishiro/source/blender/editors/space_view3d/view3d_draw.c   
    2009-06-17 03:41:16 UTC (rev 20948)
@@ -1804,7 +1804,7 @@
 /* *********************** customdata **************** */
 
 /* goes over all modes and view3d settings */
-static CustomDataMask get_viewedit_datamask(bScreen *screen)
+CustomDataMask get_viewedit_datamask(bScreen *screen)
 {
        CustomDataMask mask = CD_MASK_BAREMESH;
        ScrArea *sa;

Modified: branches/soc-2009-yukishiro/source/blender/sh/SH_api.h
===================================================================
--- branches/soc-2009-yukishiro/source/blender/sh/SH_api.h      2009-06-17 
03:13:48 UTC (rev 20947)
+++ branches/soc-2009-yukishiro/source/blender/sh/SH_api.h      2009-06-17 
03:41:16 UTC (rev 20948)
@@ -37,7 +37,7 @@
 void SH_init();
 void SH_exit();
 
-void SH_ComputeSceneCoefficients(struct Scene *scene, struct View3D *v3d, 
short recompute);
+void SH_ComputeSceneCoefficients(struct Scene *scene, unsigned int 
customdata_mask, short recompute);
 void SH_ComputeLightCoefficients(struct LightEnv *env);
 void SH_ReconstructLightProbe(struct LightEnv *env, struct ImBuf *ibuf);
 void SH_LightProbePreview(struct LightEnv *env, int width, int height,

Modified: branches/soc-2009-yukishiro/source/blender/sh/intern/compute.c
===================================================================
--- branches/soc-2009-yukishiro/source/blender/sh/intern/compute.c      
2009-06-17 03:13:48 UTC (rev 20947)
+++ branches/soc-2009-yukishiro/source/blender/sh/intern/compute.c      
2009-06-17 03:41:16 UTC (rev 20948)
@@ -247,7 +247,7 @@
 }
 
 
-void SH_ComputeSceneCoefficients(Scene *scene, View3D *v3d, short recompute)
+void SH_ComputeSceneCoefficients(Scene *scene, unsigned int customdata_mask, 
short recompute)
 {
         Base *base = NULL;
         Object *ob;
@@ -267,7 +267,7 @@
                 me = get_mesh(ob);
                 if (me == NULL) continue;
 
-                dm = mesh_get_derived_final(scene, ob, v3d->customdata_mask);
+                dm = mesh_get_derived_final(scene, ob, customdata_mask);
                 num_verts = dm->getNumVerts(dm);
                verts = dm->getVertArray(dm);
 


_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to