[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [28133] trunk/blender/source: [#14437] Modifier Stack Refactor
Campbell Barton
ideasman42 at gmail.com
Mon Apr 12 00:12:30 CEST 2010
Revision: 28133
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=28133
Author: campbellbarton
Date: 2010-04-12 00:12:30 +0200 (Mon, 12 Apr 2010)
Log Message:
-----------
[#14437] Modifier Stack Refactor
patch by Ben Batt (artificer)
Updated patch for 6 or so modifiers added since the patch was written.
- tested with CMake and SCons
- fixed one error were flags were being added to the fluids type.
- remove BKE_simple_deform.h, simple_deform.c, move functions into MOD_simpledeform.c since there were problems with circular deps.
- moved some fluid and boolean functions used by modifiers too.
Modified Paths:
--------------
trunk/blender/source/blender/CMakeLists.txt
trunk/blender/source/blender/Makefile
trunk/blender/source/blender/SConscript
trunk/blender/source/blender/blenkernel/BKE_booleanops.h
trunk/blender/source/blender/blenkernel/BKE_fluidsim.h
trunk/blender/source/blender/blenkernel/CMakeLists.txt
trunk/blender/source/blender/blenkernel/SConscript
trunk/blender/source/blender/blenkernel/intern/booleanops.c
trunk/blender/source/blender/blenkernel/intern/fluidsim.c
trunk/blender/source/blender/blenkernel/intern/modifier.c
trunk/blender/source/creator/CMakeLists.txt
Added Paths:
-----------
trunk/blender/source/blender/modifiers/
trunk/blender/source/blender/modifiers/CMakeLists.txt
trunk/blender/source/blender/modifiers/MOD_modifiertypes.h
trunk/blender/source/blender/modifiers/Makefile
trunk/blender/source/blender/modifiers/SConscript
trunk/blender/source/blender/modifiers/intern/
trunk/blender/source/blender/modifiers/intern/MOD_armature.c
trunk/blender/source/blender/modifiers/intern/MOD_array.c
trunk/blender/source/blender/modifiers/intern/MOD_bevel.c
trunk/blender/source/blender/modifiers/intern/MOD_boolean.c
trunk/blender/source/blender/modifiers/intern/MOD_boolean_util.c
trunk/blender/source/blender/modifiers/intern/MOD_boolean_util.h
trunk/blender/source/blender/modifiers/intern/MOD_build.c
trunk/blender/source/blender/modifiers/intern/MOD_cast.c
trunk/blender/source/blender/modifiers/intern/MOD_cloth.c
trunk/blender/source/blender/modifiers/intern/MOD_collision.c
trunk/blender/source/blender/modifiers/intern/MOD_curve.c
trunk/blender/source/blender/modifiers/intern/MOD_decimate.c
trunk/blender/source/blender/modifiers/intern/MOD_displace.c
trunk/blender/source/blender/modifiers/intern/MOD_edgesplit.c
trunk/blender/source/blender/modifiers/intern/MOD_explode.c
trunk/blender/source/blender/modifiers/intern/MOD_fluidsim.c
trunk/blender/source/blender/modifiers/intern/MOD_fluidsim_util.c
trunk/blender/source/blender/modifiers/intern/MOD_fluidsim_util.h
trunk/blender/source/blender/modifiers/intern/MOD_hook.c
trunk/blender/source/blender/modifiers/intern/MOD_lattice.c
trunk/blender/source/blender/modifiers/intern/MOD_mask.c
trunk/blender/source/blender/modifiers/intern/MOD_meshdeform.c
trunk/blender/source/blender/modifiers/intern/MOD_mirror.c
trunk/blender/source/blender/modifiers/intern/MOD_multires.c
trunk/blender/source/blender/modifiers/intern/MOD_none.c
trunk/blender/source/blender/modifiers/intern/MOD_particleinstance.c
trunk/blender/source/blender/modifiers/intern/MOD_particlesystem.c
trunk/blender/source/blender/modifiers/intern/MOD_screw.c
trunk/blender/source/blender/modifiers/intern/MOD_shapekey.c
trunk/blender/source/blender/modifiers/intern/MOD_shrinkwrap.c
trunk/blender/source/blender/modifiers/intern/MOD_simpledeform.c
trunk/blender/source/blender/modifiers/intern/MOD_smoke.c
trunk/blender/source/blender/modifiers/intern/MOD_smooth.c
trunk/blender/source/blender/modifiers/intern/MOD_softbody.c
trunk/blender/source/blender/modifiers/intern/MOD_solidify.c
trunk/blender/source/blender/modifiers/intern/MOD_subsurf.c
trunk/blender/source/blender/modifiers/intern/MOD_surface.c
trunk/blender/source/blender/modifiers/intern/MOD_util.c
trunk/blender/source/blender/modifiers/intern/MOD_util.h
trunk/blender/source/blender/modifiers/intern/MOD_uvproject.c
trunk/blender/source/blender/modifiers/intern/MOD_wave.c
Removed Paths:
-------------
trunk/blender/source/blender/blenkernel/BKE_simple_deform.h
trunk/blender/source/blender/blenkernel/intern/simple_deform.c
Modified: trunk/blender/source/blender/CMakeLists.txt
===================================================================
--- trunk/blender/source/blender/CMakeLists.txt 2010-04-11 22:08:58 UTC (rev 28132)
+++ trunk/blender/source/blender/CMakeLists.txt 2010-04-11 22:12:30 UTC (rev 28133)
@@ -29,6 +29,7 @@
ADD_SUBDIRECTORY(avi)
ADD_SUBDIRECTORY(nodes)
ADD_SUBDIRECTORY(blenkernel)
+ADD_SUBDIRECTORY(modifiers)
ADD_SUBDIRECTORY(blenlib)
ADD_SUBDIRECTORY(blenloader)
ADD_SUBDIRECTORY(blenpluginapi)
Modified: trunk/blender/source/blender/Makefile
===================================================================
--- trunk/blender/source/blender/Makefile 2010-04-11 22:08:58 UTC (rev 28132)
+++ trunk/blender/source/blender/Makefile 2010-04-11 22:12:30 UTC (rev 28133)
@@ -33,7 +33,7 @@
DIRS = windowmanager editors blenloader readblenfile
DIRS += avi imbuf render blenlib blenkernel blenpluginapi
DIRS += makesdna makesrna
-DIRS += python nodes gpu
+DIRS += python nodes modifiers gpu
DIRS += blenfont ikplugin
ifeq ($(WITH_QUICKTIME), true)
Modified: trunk/blender/source/blender/SConscript
===================================================================
--- trunk/blender/source/blender/SConscript 2010-04-11 22:08:58 UTC (rev 28132)
+++ trunk/blender/source/blender/SConscript 2010-04-11 22:12:30 UTC (rev 28133)
@@ -16,6 +16,7 @@
'readblenfile/SConscript',
'render/SConscript',
'nodes/SConscript',
+ 'modifiers/SConscript',
'ikplugin/SConscript',
'windowmanager/SConscript',
'blenfont/SConscript'])
Modified: trunk/blender/source/blender/blenkernel/BKE_booleanops.h
===================================================================
--- trunk/blender/source/blender/blenkernel/BKE_booleanops.h 2010-04-11 22:08:58 UTC (rev 28132)
+++ trunk/blender/source/blender/blenkernel/BKE_booleanops.h 2010-04-11 22:12:30 UTC (rev 28133)
@@ -29,21 +29,5 @@
#ifndef BKE_BOOLEANOPS_H
#define BKE_BOOLEANOPS_H
-struct Scene;
-struct Object;
-struct Base;
-struct DerivedMesh;
-
-/* Performs a boolean between two mesh objects, it is assumed that both objects
- are in fact a mesh object. On success returns 1 and creates a new mesh object
- into blender data structures. On failure returns 0 and reports an error. */
-int NewBooleanMesh(struct Scene *scene, struct Base *base, struct Base *base_select, int op);
-
-
-/* Performs a boolean between two mesh objects, it is assumed that both objects
- are in fact mesh object. On success returns a DerivedMesh. On failure
- returns NULL and reports an error. */
-struct DerivedMesh *NewBooleanDerivedMesh(struct DerivedMesh *dm, struct Object *ob, struct DerivedMesh *dm_select, struct Object *ob_select,
- int int_op_type);
#endif
Modified: trunk/blender/source/blender/blenkernel/BKE_fluidsim.h
===================================================================
--- trunk/blender/source/blender/blenkernel/BKE_fluidsim.h 2010-04-11 22:08:58 UTC (rev 28132)
+++ trunk/blender/source/blender/blenkernel/BKE_fluidsim.h 2010-04-11 22:12:30 UTC (rev 28133)
@@ -30,6 +30,7 @@
#ifndef BKE_FLUIDSIM_H
#define BKE_FLUIDSIM_H
+
struct Object;
struct Scene;
struct FluidsimModifierData;
@@ -37,25 +38,12 @@
struct MVert;
/* old interface */
-struct FluidsimSettings *fluidsimSettingsNew(struct Object *srcob);
void initElbeemMesh(struct Scene *scene, struct Object *ob,
int *numVertices, float **vertices,
int *numTriangles, int **triangles,
int useGlobalCoords, int modifierIndex);
-/* new fluid-modifier interface */
-void fluidsim_init(struct FluidsimModifierData *fluidmd);
-void fluidsim_free(struct FluidsimModifierData *fluidmd);
-
-struct DerivedMesh *fluidsim_read_cache(struct Object *ob, struct DerivedMesh *orgdm,
- struct FluidsimModifierData *fluidmd, int framenr, int useRenderParams);
-void fluidsim_read_vel_cache(struct FluidsimModifierData *fluidmd, struct DerivedMesh *dm,
- char *filename);
-struct DerivedMesh *fluidsimModifier_do(struct FluidsimModifierData *fluidmd,
- struct Scene *scene, struct Object *ob, struct DerivedMesh *dm,
- int useRenderParams, int isFinalCalc);
-
/* bounding box & memory estimate */
void fluid_get_bb(struct MVert *mvert, int totvert, float obmat[][4],
float start[3], float size[3]);
Deleted: trunk/blender/source/blender/blenkernel/BKE_simple_deform.h
===================================================================
--- trunk/blender/source/blender/blenkernel/BKE_simple_deform.h 2010-04-11 22:08:58 UTC (rev 28132)
+++ trunk/blender/source/blender/blenkernel/BKE_simple_deform.h 2010-04-11 22:12:30 UTC (rev 28133)
@@ -1,39 +0,0 @@
-/**
- * BKE_shrinkwrap.h
- *
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) Blender Foundation.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-#ifndef BKE_SIMPLE_DEFORM_H
-#define BKE_SIMPLE_DEFORM_H
-
-struct Object;
-struct DerivedMesh;
-struct SimpleDeformModifierData;
-
-void SimpleDeformModifier_do(SimpleDeformModifierData *smd, struct Object *ob, struct DerivedMesh *dm, float (*vertexCos)[3], int numVerts);
-
-#endif
-
Modified: trunk/blender/source/blender/blenkernel/CMakeLists.txt
===================================================================
--- trunk/blender/source/blender/blenkernel/CMakeLists.txt 2010-04-11 22:08:58 UTC (rev 28132)
+++ trunk/blender/source/blender/blenkernel/CMakeLists.txt 2010-04-11 22:12:30 UTC (rev 28133)
@@ -27,7 +27,7 @@
FILE(GLOB SRC intern/*.c)
SET(INC
- . ../../../intern/guardedalloc ../../../intern/memutil ../editors/include ../blenlib ../makesdna
+ . ../../../intern/guardedalloc ../../../intern/memutil ../editors/include ../blenlib ../makesdna ../modifiers
../render/extern/include ../../../intern/decimation/extern
../imbuf ../avi ../../../intern/elbeem/extern ../../../intern/opennl/extern
../../../intern/iksolver/extern ../blenloader ../ikplugin
@@ -38,6 +38,7 @@
${ZLIB_INC}
)
+
ADD_DEFINITIONS(-DGLEW_STATIC)
IF(WITH_BULLET)
Modified: trunk/blender/source/blender/blenkernel/SConscript
===================================================================
--- trunk/blender/source/blender/blenkernel/SConscript 2010-04-11 22:08:58 UTC (rev 28132)
+++ trunk/blender/source/blender/blenkernel/SConscript 2010-04-11 22:12:30 UTC (rev 28133)
@@ -6,7 +6,7 @@
incs = '. #/intern/guardedalloc #/intern/memutil ../editors/include'
incs += ' ../blenlib ../blenfont ../makesdna ../windowmanager'
incs += ' ../render/extern/include #/intern/decimation/extern ../makesrna'
-incs += ' ../imbuf ../ikplugin ../avi #/intern/elbeem/extern ../nodes'
+incs += ' ../imbuf ../ikplugin ../avi #/intern/elbeem/extern ../nodes ../modifiers'
incs += ' #/intern/iksolver/extern ../blenloader'
incs += ' #/extern/bullet2/src'
incs += ' #/intern/opennl/extern #/intern/bsp/extern'
Modified: trunk/blender/source/blender/blenkernel/intern/booleanops.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/booleanops.c 2010-04-11 22:08:58 UTC (rev 28132)
+++ trunk/blender/source/blender/blenkernel/intern/booleanops.c 2010-04-11 22:12:30 UTC (rev 28133)
@@ -1,595 +0,0 @@
-/**
- * $Id$
- *
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) Blender Foundation
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- * CSG operations.
- */
-
-#include <string.h>
-#include <math.h>
-
-#include "MEM_guardedalloc.h"
-
-#include "BLI_math.h"
-#include "BLI_ghash.h"
-
-#include "DNA_material_types.h"
-#include "DNA_mesh_types.h"
-#include "DNA_meshdata_types.h"
-#include "DNA_object_types.h"
-#include "DNA_scene_types.h"
-
-#include "CSG_BooleanOps.h"
-
-#include "BKE_cdderivedmesh.h"
-#include "BKE_depsgraph.h"
-#include "BKE_material.h"
-#include "BKE_mesh.h"
-#include "BKE_object.h"
-
-
-
-/**
- * Here's the vertex iterator structure used to walk through
- * the blender vertex structure.
- */
-
-typedef struct {
- DerivedMesh *dm;
- Object *ob;
- int pos;
-} VertexIt;
-
-/**
- * Implementations of local vertex iterator functions.
- * These describe a blender mesh to the CSG module.
- */
-
-static void VertexIt_Destruct(CSG_VertexIteratorDescriptor * iterator)
-{
- if (iterator->it) {
- // deallocate memory for iterator
- MEM_freeN(iterator->it);
- iterator->it = 0;
- }
- iterator->Done = NULL;
- iterator->Fill = NULL;
- iterator->Reset = NULL;
- iterator->Step = NULL;
- iterator->num_elements = 0;
-
-}
-
-static int VertexIt_Done(CSG_IteratorPtr it)
-{
- VertexIt * iterator = (VertexIt *)it;
- return(iterator->pos >= iterator->dm->getNumVerts(iterator->dm));
-}
-
-static void VertexIt_Fill(CSG_IteratorPtr it, CSG_IVertex *vert)
-{
- VertexIt * iterator = (VertexIt *)it;
- MVert *verts = iterator->dm->getVertArray(iterator->dm);
-
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list