Revision: 23515
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=23515
Author:   mxcurioni
Date:     2009-09-28 05:56:31 +0200 (Mon, 28 Sep 2009)

Log Message:
-----------
Migration of Freestyle to Blender 2.5 codebase (continued):
- proper Freestyle initialization, with support for undo/redo
- re-added FreestyleStyleConfig data structure
- Freestyle Python interpreter updated

This commit should compile without errors. More work is necessary to complete 
the migration:
- add Freestyle in the UI
- set up RNA support

Modified Paths:
--------------
    branches/soc-2008-mxcurioni/source/blender/SConscript
    branches/soc-2008-mxcurioni/source/blender/blenkernel/CMakeLists.txt
    branches/soc-2008-mxcurioni/source/blender/blenkernel/SConscript
    branches/soc-2008-mxcurioni/source/blender/blenkernel/intern/blender.c
    branches/soc-2008-mxcurioni/source/blender/freestyle/FRS_freestyle.h
    branches/soc-2008-mxcurioni/source/blender/freestyle/SConscript
    
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/app_blender/AppConfig.cpp
    
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/app_blender/Controller.cpp
    
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/app_blender/FRS_freestyle.cpp
    
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/scene_graph/BlenderFileLoader.cpp
    
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/scene_graph/BlenderFileLoader.h
    
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/stroke/BlenderStrokeRenderer.cpp
    
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/stroke/BlenderStrokeRenderer.h
    
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/stroke/StyleModule.h
    
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/system/Interpreter.h
    
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/system/PythonInterpreter.h
    branches/soc-2008-mxcurioni/source/blender/makesdna/DNA_scene_types.h
    branches/soc-2008-mxcurioni/source/blender/makesdna/intern/makesdna.c
    branches/soc-2008-mxcurioni/source/blender/windowmanager/intern/wm_files.c
    branches/soc-2008-mxcurioni/source/creator/creator.c

Added Paths:
-----------
    branches/soc-2008-mxcurioni/source/blender/makesdna/DNA_freestyle_types.h

Modified: branches/soc-2008-mxcurioni/source/blender/SConscript
===================================================================
--- branches/soc-2008-mxcurioni/source/blender/SConscript       2009-09-28 
03:28:28 UTC (rev 23514)
+++ branches/soc-2008-mxcurioni/source/blender/SConscript       2009-09-28 
03:56:31 UTC (rev 23515)
@@ -9,6 +9,7 @@
             'blenpluginapi/SConscript',
             'gpu/SConscript',
             'editors/SConscript',
+                       'freestyle/SConscript',
             'imbuf/SConscript',
             'imbuf/intern/cineon/SConscript',
             'makesdna/SConscript',
@@ -31,7 +32,4 @@
     SConscript (['imbuf/intern/openexr/SConscript'])
 
 if env['WITH_BF_QUICKTIME']:
-    SConscript (['quicktime/SConscript'])
-
-if env['WITH_BF_FREESTYLE']:
-    SConscript (['freestyle/SConscript'])
+    SConscript (['quicktime/SConscript'])
\ No newline at end of file

Modified: branches/soc-2008-mxcurioni/source/blender/blenkernel/CMakeLists.txt
===================================================================
--- branches/soc-2008-mxcurioni/source/blender/blenkernel/CMakeLists.txt        
2009-09-28 03:28:28 UTC (rev 23514)
+++ branches/soc-2008-mxcurioni/source/blender/blenkernel/CMakeLists.txt        
2009-09-28 03:56:31 UTC (rev 23515)
@@ -30,7 +30,7 @@
        . ../../../intern/guardedalloc ../../../intern/memutil 
../editors/include ../blenlib ../makesdna
        ../render/extern/include ../../../intern/decimation/extern
        ../imbuf ../avi ../../../intern/elbeem/extern 
../../../intern/opennl/extern
-       ../../../intern/iksolver/extern ../blenloader
+       ../../../intern/iksolver/extern ../blenloader ../freestyle
        ../nodes ../../../extern/glew/include ../gpu ../makesrna 
../../../intern/smoke/extern
        ../../../intern/bsp/extern ../blenfont
        ../../../intern/audaspace/intern

Modified: branches/soc-2008-mxcurioni/source/blender/blenkernel/SConscript
===================================================================
--- branches/soc-2008-mxcurioni/source/blender/blenkernel/SConscript    
2009-09-28 03:28:28 UTC (rev 23514)
+++ branches/soc-2008-mxcurioni/source/blender/blenkernel/SConscript    
2009-09-28 03:56:31 UTC (rev 23515)
@@ -6,7 +6,7 @@
 incs = '. #/intern/guardedalloc #/intern/memutil ../editors/include ../blenlib 
../blenfont ../makesdna'
 incs += ' ../render/extern/include #/intern/decimation/extern ../makesrna'
 incs += ' ../imbuf ../avi #/intern/elbeem/extern ../nodes'
-incs += ' #/intern/iksolver/extern ../blenloader'
+incs += ' #/intern/iksolver/extern ../blenloader ../freestyle'
 incs += ' #/extern/bullet2/src'
 incs += ' #/intern/opennl/extern #/intern/bsp/extern'
 incs += ' ../gpu #/extern/glew/include'

Modified: branches/soc-2008-mxcurioni/source/blender/blenkernel/intern/blender.c
===================================================================
--- branches/soc-2008-mxcurioni/source/blender/blenkernel/intern/blender.c      
2009-09-28 03:28:28 UTC (rev 23514)
+++ branches/soc-2008-mxcurioni/source/blender/blenkernel/intern/blender.c      
2009-09-28 03:56:31 UTC (rev 23515)
@@ -93,6 +93,8 @@
 
 #include "BKE_utildefines.h" // O_BINARY FALSE
 
+#include "FRS_freestyle.h"
+
 Global G;
 UserDef U;
 ListBase WMlist= {NULL, NULL};
@@ -630,6 +632,8 @@
 void BKE_undo_step(bContext *C, int step)
 {
        
+       FRS_initialize(C);
+       
        if(step==0) {
                read_undosave(C, curundo);
        }

Modified: branches/soc-2008-mxcurioni/source/blender/freestyle/FRS_freestyle.h
===================================================================
--- branches/soc-2008-mxcurioni/source/blender/freestyle/FRS_freestyle.h        
2009-09-28 03:28:28 UTC (rev 23514)
+++ branches/soc-2008-mxcurioni/source/blender/freestyle/FRS_freestyle.h        
2009-09-28 03:56:31 UTC (rev 23515)
@@ -11,6 +11,8 @@
        #include "DNA_listBase.h"
        #include "DNA_scene_types.h"
        
+       #include "BKE_context.h"
+       
        extern short freestyle_is_initialized;
        
        extern float freestyle_viewpoint[3];
@@ -26,8 +28,8 @@
        extern float* freestyle_dkr_epsilon;
        
        // Rendering
-       void FRS_initialize();
-       void FRS_add_Freestyle(struct Render* re);
+       void FRS_initialize(bContext* C);
+       void FRS_add_Freestyle( struct Render* re);
        void FRS_exit();
        
        // Panel configuration

Modified: branches/soc-2008-mxcurioni/source/blender/freestyle/SConscript
===================================================================
--- branches/soc-2008-mxcurioni/source/blender/freestyle/SConscript     
2009-09-28 03:28:28 UTC (rev 23514)
+++ branches/soc-2008-mxcurioni/source/blender/freestyle/SConscript     
2009-09-28 03:56:31 UTC (rev 23515)
@@ -6,7 +6,7 @@
 defs = []
 incs = ''
 
-incs += '../blenkernel ../blenloader ../blenlib ../imbuf ../makesdna ../python 
'
+incs += '../blenkernel ../blenloader ../blenlib ../imbuf ../makesdna 
../makesrna ../python '
 incs += '../render/extern/include ../render/intern/include ../include ../src'
 incs += ' #/extern/glew/include #/intern/guardedalloc'
 incs += ' ' + env['BF_PYTHON_INC']     
@@ -67,7 +67,7 @@
                                sources=sources,
                 includes=Split(incs),
                 defines=defs,
-                               libtype=['blender'],
+                               libtype=['core'],
                 priority = [25]
  )
 

Modified: 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/app_blender/AppConfig.cpp
===================================================================
--- 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/app_blender/AppConfig.cpp
       2009-09-28 03:28:28 UTC (rev 23514)
+++ 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/app_blender/AppConfig.cpp
       2009-09-28 03:56:31 UTC (rev 23515)
@@ -25,7 +25,7 @@
 using namespace std;
 
 extern "C" {
-       #include "api2_2x/EXPP_interface.h"
+       #include "BLI_util.h"
 }
 
 namespace Config {
@@ -33,7 +33,7 @@
 Path::Path() {
        // get the root directory
        //soc
-       setRootDir( bpy_gethome(1) );
+       setRootDir( BLI_gethome_folder("scripts") );
 
        _pInstance = this;
 }

Modified: 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/app_blender/Controller.cpp
===================================================================
--- 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/app_blender/Controller.cpp
      2009-09-28 03:28:28 UTC (rev 23514)
+++ 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/app_blender/Controller.cpp
      2009-09-28 03:56:31 UTC (rev 23515)
@@ -656,7 +656,7 @@
 }
 
 Render* Controller::RenderStrokes(Render *re) {
-       BlenderStrokeRenderer* blenderRenderer = new BlenderStrokeRenderer;
+       BlenderStrokeRenderer* blenderRenderer = new BlenderStrokeRenderer(re);
        _Canvas->Render( blenderRenderer );
        Render* freestyle_render = blenderRenderer->RenderScene(re);
        delete blenderRenderer;

Modified: 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/app_blender/FRS_freestyle.cpp
===================================================================
--- 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/app_blender/FRS_freestyle.cpp
   2009-09-28 03:28:28 UTC (rev 23514)
+++ 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/app_blender/FRS_freestyle.cpp
   2009-09-28 03:56:31 UTC (rev 23515)
@@ -17,9 +17,8 @@
 #include "DNA_camera_types.h"
 #include "DNA_freestyle_types.h"
 
-#include "BKE_global.h"
+#include "BKE_main.h"
 #include "BLI_blenlib.h"
-#include "BIF_renderwin.h"
 #include "BPY_extern.h"
 
 #include "renderpipeline.h"
@@ -33,6 +32,7 @@
        static Config::Path *pathconfig = NULL;
        static Controller *controller = NULL;
        static AppView *view = NULL;
+       static Scene *current_scene = NULL;
 
        // camera information
        float freestyle_viewpoint[3];
@@ -55,7 +55,7 @@
        //   Initialization 
        //=======================================================
 
-       void FRS_initialize(){
+       void FRS_initialize(bContext* C){
                
                if( !freestyle_is_initialized ) {
 
@@ -69,8 +69,12 @@
                        freestyle_is_initialized = 1;
                }
                
-               FRS_select_layer( (SceneRenderLayer*) 
BLI_findlink(&G.scene->r.layers, G.scene->r.actlay) );
+               current_scene = CTX_data_scene(C);
+               if( !current_scene )
+                       current_scene = (Scene*) CTX_data_main(C)->scene.first;
                
+               FRS_select_layer( (SceneRenderLayer*) 
BLI_findlink(&current_scene->r.layers, current_scene->r.actlay) );
+               
        }
        
        void FRS_exit() {
@@ -212,7 +216,7 @@
                init_view(re);
                init_camera(re);
                
-               for(srl= (SceneRenderLayer *)G.scene->r.layers.first; srl; srl= 
srl->next) {
+               for(srl= (SceneRenderLayer *)current_scene->r.layers.first; 
srl; srl= srl->next) {
                        if( !(srl->layflag & SCE_LAY_DISABLE) &&
                                srl->layflag & SCE_LAY_FRS &&
                                displayed_layer_count(srl) > 0       )
@@ -277,7 +281,7 @@
                freestyle_dkr_epsilon = &config->dkr_epsilon;
                
                freestyle_current_layer = srl;
-               G.scene->freestyle_current_layer_number = 
BLI_findindex(&G.scene->r.layers, freestyle_current_layer);
+               current_scene->freestyle_current_layer_number = 
BLI_findindex(&current_scene->r.layers, freestyle_current_layer);
        }
        
        void FRS_add_module()

Modified: 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/scene_graph/BlenderFileLoader.cpp
===================================================================
--- 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/scene_graph/BlenderFileLoader.cpp
       2009-09-28 03:28:28 UTC (rev 23514)
+++ 
branches/soc-2008-mxcurioni/source/blender/freestyle/intern/scene_graph/BlenderFileLoader.cpp
       2009-09-28 03:56:31 UTC (rev 23515)
@@ -66,7 +66,7 @@
        // M allows to recover world coordinates from camera coordinates
        // M => obr->ob->imat * obr->obmat  (multiplication from left to right)
        float M[4][4];
-       MTC_Mat4MulMat4(M, obr->ob->imat, obr->ob->obmat); 
+       Mat4MulMat4(M, obr->ob->imat, obr->ob->obmat); 
        
        // We compute a normal per vertex and manages the smoothing of the 
shape:
        // Lib3dsVector 
*normalL=(Lib3dsVector*)malloc(3*sizeof(Lib3dsVector)*mesh->faces);
@@ -128,7 +128,7 @@
        pvtmp[1] = obr->vertnodes[0].vert->co[1];
        pvtmp[2] = obr->vertnodes[0].vert->co[2];
        
-       MTC_Mat4MulVecfl( M, pvtmp);
+       Mat4MulVecfl( M, pvtmp);
        
        minBBox[0] = pvtmp[0];
        maxBBox[0] = pvtmp[0];
@@ -197,7 +197,7 @@
                                //lib3ds_vector_transform(pv, M, 
mesh->pointL[f->points[i]].pos); //fills the cells of the pv array
                                for(j=0; j<3; j++)
                                        pv[j] = fv[i]->co[j];
-                               MTC_Mat4MulVecfl( M, pv);
+                               Mat4MulVecfl( M, pv);
        
                                for(j=0; j<3; j++) // we parse the xyz 
coordinates of the vertex i
                                {
@@ -234,8 +234,8 @@
                        vec02[2] = pv_ptr[2][2] - pv_ptr[0][2];
                        
                        float n[3];
-                       MTC_cross3Float(n, vec01, vec02);
-                       MTC_normalize3DF(n);
+                       Crossf(n, vec01, vec02);
+                       Normalize(n);
                        
                        for(i=0; i<3; ++i) {
                                for(j=0; j<3; ++j) {

@@ Diff output truncated at 10240 characters. @@

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

Reply via email to