[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [54028] trunk/blender/source: make bullet optional again
Campbell Barton
ideasman42 at gmail.com
Wed Jan 23 08:26:49 CET 2013
Revision: 54028
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=54028
Author: campbellbarton
Date: 2013-01-23 07:26:39 +0000 (Wed, 23 Jan 2013)
Log Message:
-----------
make bullet optional again
Modified Paths:
--------------
trunk/blender/source/blender/CMakeLists.txt
trunk/blender/source/blender/blenkernel/CMakeLists.txt
trunk/blender/source/blender/blenkernel/SConscript
trunk/blender/source/blender/blenkernel/intern/collision.c
trunk/blender/source/blender/blenkernel/intern/pointcache.c
trunk/blender/source/blender/blenkernel/intern/rigidbody.c
trunk/blender/source/blender/editors/interface/interface_templates.c
trunk/blender/source/blender/editors/physics/CMakeLists.txt
trunk/blender/source/blender/editors/physics/rigidbody_world.c
trunk/blender/source/blender/makesrna/intern/CMakeLists.txt
trunk/blender/source/blender/makesrna/intern/rna_rigidbody.c
trunk/blender/source/blender/modifiers/intern/MOD_boolean.c
trunk/blender/source/creator/CMakeLists.txt
trunk/blender/source/gameengine/BlenderRoutines/CMakeLists.txt
trunk/blender/source/gameengine/Converter/BL_BlenderDataConversion.cpp
trunk/blender/source/gameengine/Converter/CMakeLists.txt
trunk/blender/source/gameengine/Converter/KX_BlenderSceneConverter.cpp
trunk/blender/source/gameengine/Converter/KX_SoftBodyDeformer.cpp
trunk/blender/source/gameengine/Converter/SConscript
trunk/blender/source/gameengine/Ketsji/CMakeLists.txt
trunk/blender/source/gameengine/Ketsji/KX_BulletPhysicsController.cpp
trunk/blender/source/gameengine/Ketsji/KX_BulletPhysicsController.h
trunk/blender/source/gameengine/Ketsji/KX_ConvertPhysicsObject.h
trunk/blender/source/gameengine/Ketsji/KX_ConvertPhysicsObjects.cpp
trunk/blender/source/gameengine/Ketsji/KX_GameObject.cpp
trunk/blender/source/gameengine/Ketsji/KX_PyConstraintBinding.cpp
trunk/blender/source/gameengine/Ketsji/KX_Scene.cpp
trunk/blender/source/gameengine/Ketsji/SConscript
trunk/blender/source/gameengine/Physics/Bullet/CMakeLists.txt
trunk/blender/source/gameengine/Physics/Bullet/SConscript
Modified: trunk/blender/source/blender/CMakeLists.txt
===================================================================
--- trunk/blender/source/blender/CMakeLists.txt 2013-01-23 06:09:53 UTC (rev 54027)
+++ trunk/blender/source/blender/CMakeLists.txt 2013-01-23 07:26:39 UTC (rev 54028)
@@ -106,8 +106,11 @@
add_subdirectory(modifiers)
add_subdirectory(makesdna)
add_subdirectory(makesrna)
-add_subdirectory(rigidbody)
+if(WITH_BULLET)
+ add_subdirectory(rigidbody)
+endif()
+
if(WITH_COMPOSITOR)
add_subdirectory(opencl) # later on this may be used more generally
add_subdirectory(compositor)
Modified: trunk/blender/source/blender/blenkernel/CMakeLists.txt
===================================================================
--- trunk/blender/source/blender/blenkernel/CMakeLists.txt 2013-01-23 06:09:53 UTC (rev 54027)
+++ trunk/blender/source/blender/blenkernel/CMakeLists.txt 2013-01-23 07:26:39 UTC (rev 54028)
@@ -37,7 +37,6 @@
../modifiers
../nodes
../render/extern/include
- ../rigidbody
../../../intern/guardedalloc
../../../intern/iksolver/extern
../../../intern/memutil
@@ -264,7 +263,10 @@
list(APPEND INC_SYS
${BULLET_INCLUDE_DIRS}
)
- add_definitions(-DUSE_BULLET)
+ list(APPEND INC
+ ../rigidbody
+ )
+ add_definitions(-DWITH_BULLET)
endif()
#if(WITH_MOD_CLOTH_ELTOPO)
Modified: trunk/blender/source/blender/blenkernel/SConscript
===================================================================
--- trunk/blender/source/blender/blenkernel/SConscript 2013-01-23 06:09:53 UTC (rev 54027)
+++ trunk/blender/source/blender/blenkernel/SConscript 2013-01-23 07:26:39 UTC (rev 54028)
@@ -111,7 +111,7 @@
incs += ' ' + env['BF_QUICKTIME_INC']
if env['WITH_BF_BULLET']:
- defs.append('USE_BULLET')
+ defs.append('WITH_BULLET')
if env['OURPLATFORM'] == 'darwin':
if env['WITH_BF_OPENMP']:
Modified: trunk/blender/source/blender/blenkernel/intern/collision.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/collision.c 2013-01-23 06:09:53 UTC (rev 54027)
+++ trunk/blender/source/blender/blenkernel/intern/collision.c 2013-01-23 07:26:39 UTC (rev 54028)
@@ -59,7 +59,7 @@
#include "BKE_modifier.h"
#include "BKE_DerivedMesh.h"
-#ifdef USE_BULLET
+#ifdef WITH_BULLET
#include "Bullet-C-Api.h"
#endif
#include "BLI_kdopbvh.h"
@@ -385,7 +385,7 @@
CollisionModifierData *collmd = (CollisionModifierData *) md2;
/* Cloth *cloth = clmd->clothObject; */ /* UNUSED */
MFace *face1=NULL, *face2 = NULL;
-#ifdef USE_BULLET
+#ifdef WITH_BULLET
ClothVertex *verts1 = clmd->clothObject->verts;
#endif
double distance = 0;
@@ -458,7 +458,7 @@
}
}
-#ifdef USE_BULLET
+#ifdef WITH_BULLET
// calc distance + normal
distance = plNearestPoints (
verts1[collpair->ap1].txold, verts1[collpair->ap2].txold, verts1[collpair->ap3].txold, collmd->current_x[collpair->bp1].co, collmd->current_x[collpair->bp2].co, collmd->current_x[collpair->bp3].co, collpair->pa, collpair->pb, collpair->vector );
Modified: trunk/blender/source/blender/blenkernel/intern/pointcache.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/pointcache.c 2013-01-23 06:09:53 UTC (rev 54027)
+++ trunk/blender/source/blender/blenkernel/intern/pointcache.c 2013-01-23 07:26:39 UTC (rev 54028)
@@ -73,7 +73,9 @@
#include "BIK_api.h"
-#include "RBI_api.h"
+#ifdef WITH_BULLET
+# include "RBI_api.h"
+#endif
/* both in intern */
#ifdef WITH_SMOKE
@@ -883,10 +885,10 @@
RigidBodyOb *rbo = ob->rigidbody_object;
if (rbo->type == RBO_TYPE_ACTIVE) {
-
+#ifdef WITH_BULLET
RB_body_get_position(rbo->physics_object, rbo->pos);
RB_body_get_orientation(rbo->physics_object, rbo->orn);
-
+#endif
PTCACHE_DATA_FROM(data, BPHYS_DATA_LOCATION, rbo->pos);
PTCACHE_DATA_FROM(data, BPHYS_DATA_ROTATION, rbo->orn);
}
Modified: trunk/blender/source/blender/blenkernel/intern/rigidbody.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/rigidbody.c 2013-01-23 06:09:53 UTC (rev 54027)
+++ trunk/blender/source/blender/blenkernel/intern/rigidbody.c 2013-01-23 07:26:39 UTC (rev 54028)
@@ -42,7 +42,9 @@
#include "BLI_blenlib.h"
#include "BLI_math.h"
-#include "RBI_api.h"
+#ifdef WITH_BULLET
+# include "RBI_api.h"
+#endif
#include "DNA_anim_types.h"
#include "DNA_group_types.h"
@@ -66,6 +68,8 @@
#include "RNA_access.h"
+#ifdef WITH_BULLET
+
/* ************************************** */
/* Memory Management */
@@ -1210,3 +1214,36 @@
}
}
/* ************************************** */
+
+#else /* WITH_BULLET */
+
+/* stubs */
+#ifdef __GNUC__
+# pragma GCC diagnostic push
+# pragma GCC diagnostic ignored "-Wunused-parameter"
+#endif
+
+void BKE_rigidbody_free_world(RigidBodyWorld *rbw) {}
+void BKE_rigidbody_free_object(Object *ob) {}
+void BKE_rigidbody_free_constraint(Object *ob) {}
+struct RigidBodyOb *BKE_rigidbody_copy_object(Object *ob) { return NULL; }
+struct RigidBodyCon *BKE_rigidbody_copy_constraint(Object *ob) { return NULL; }
+void BKE_rigidbody_validate_sim_shape(Object *ob, short rebuild) {}
+void BKE_rigidbody_validate_sim_object(RigidBodyWorld *rbw, Object *ob, short rebuild) {}
+void BKE_rigidbody_validate_sim_constraint(RigidBodyWorld *rbw, Object *ob, short rebuild) {}
+void BKE_rigidbody_validate_sim_world(Scene *scene, RigidBodyWorld *rbw, short rebuild) {}
+struct RigidBodyWorld *BKE_rigidbody_create_world(Scene *scene) { return NULL; }
+struct RigidBodyOb *BKE_rigidbody_create_object(Scene *scene, Object *ob, short type) { return NULL; }
+struct RigidBodyCon *BKE_rigidbody_create_constraint(Scene *scene, Object *ob, short type) { return NULL; }
+struct RigidBodyWorld *BKE_rigidbody_get_world(Scene *scene) { return NULL; }
+void BKE_rigidbody_remove_object(Scene *scene, Object *ob) {}
+void BKE_rigidbody_remove_constraint(Scene *scene, Object *ob) {}
+void BKE_rigidbody_sync_transforms(Scene *scene, Object *ob, float ctime) {}
+void BKE_rigidbody_cache_reset(RigidBodyWorld *rbw) {}
+void BKE_rigidbody_do_simulation(Scene *scene, float ctime) {}
+
+#ifdef __GNUC__
+# pragma GCC diagnostic pop
+#endif
+
+#endif /* WITH_BULLET */
Modified: trunk/blender/source/blender/editors/interface/interface_templates.c
===================================================================
--- trunk/blender/source/blender/editors/interface/interface_templates.c 2013-01-23 06:09:53 UTC (rev 54027)
+++ trunk/blender/source/blender/editors/interface/interface_templates.c 2013-01-23 07:26:39 UTC (rev 54028)
@@ -1606,7 +1606,7 @@
RNAUpdateCb *cb;
uiBlock *block;
uiBut *but;
- rctf rect;
+// rctf rect; /* UNUSED */
int icon;
if (!prop || RNA_property_type(prop) != PROP_ENUM)
@@ -1618,8 +1618,8 @@
cb->ptr = *ptr;
cb->prop = prop;
- rect.xmin = 0; rect.xmax = 10.0f * UI_UNIT_X;
- rect.ymin = 0; rect.ymax = 10.0f * UI_UNIT_X;
+// rect.xmin = 0; rect.xmax = 10.0f * UI_UNIT_X;
+// rect.ymin = 0; rect.ymax = 10.0f * UI_UNIT_X;
block = uiLayoutAbsoluteBlock(layout);
Modified: trunk/blender/source/blender/editors/physics/CMakeLists.txt
===================================================================
--- trunk/blender/source/blender/editors/physics/CMakeLists.txt 2013-01-23 06:09:53 UTC (rev 54027)
+++ trunk/blender/source/blender/editors/physics/CMakeLists.txt 2013-01-23 07:26:39 UTC (rev 54028)
@@ -27,7 +27,6 @@
../../makesdna
../../makesrna
../../windowmanager
- ../../rigidbody
../../../../intern/elbeem/extern
../../../../intern/guardedalloc
)
@@ -63,4 +62,11 @@
add_definitions(-DWITH_INTERNATIONAL)
endif()
+if(WITH_BULLET)
+ list(APPEND INC
+ ../../rigidbody
+ )
+ add_definitions(-DWITH_BULLET)
+endif()
+
blender_add_lib(bf_editor_physics "${SRC}" "${INC}" "${INC_SYS}")
Modified: trunk/blender/source/blender/editors/physics/rigidbody_world.c
===================================================================
--- trunk/blender/source/blender/editors/physics/rigidbody_world.c 2013-01-23 06:09:53 UTC (rev 54027)
+++ trunk/blender/source/blender/editors/physics/rigidbody_world.c 2013-01-23 07:26:39 UTC (rev 54028)
@@ -40,7 +40,9 @@
#include "BLI_blenlib.h"
#include "BLI_math.h"
-#include "RBI_api.h"
+#ifdef WITH_BULLET
+# include "RBI_api.h"
+#endif
#include "BKE_context.h"
#include "BKE_depsgraph.h"
@@ -170,8 +172,9 @@
}
RNA_string_get(op->ptr, "filepath", path);
+#ifdef WITH_BULLET
RB_dworld_export(rbw->physics_world, path);
-
+#endif
return OPERATOR_FINISHED;
}
Modified: trunk/blender/source/blender/makesrna/intern/CMakeLists.txt
===================================================================
--- trunk/blender/source/blender/makesrna/intern/CMakeLists.txt 2013-01-23 06:09:53 UTC (rev 54027)
+++ trunk/blender/source/blender/makesrna/intern/CMakeLists.txt 2013-01-23 07:26:39 UTC (rev 54028)
@@ -238,6 +238,13 @@
add_definitions(-DWITH_INTERNATIONAL)
endif()
+if(WITH_BULLET)
+ list(APPEND INC
+ ../../rigidbody
+ )
+ add_definitions(-DWITH_BULLET)
+endif()
+
# Build makesrna executable
blender_include_dirs(
.
@@ -254,7 +261,6 @@
../../windowmanager
../../editors/include
../../render/extern/include
- ../../rigidbody
../../../../intern/audaspace/intern
../../../../intern/cycles/blender
../../../../intern/guardedalloc
Modified: trunk/blender/source/blender/makesrna/intern/rna_rigidbody.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_rigidbody.c 2013-01-23 06:09:53 UTC (rev 54027)
+++ trunk/blender/source/blender/makesrna/intern/rna_rigidbody.c 2013-01-23 07:26:39 UTC (rev 54028)
@@ -73,7 +73,9 @@
#ifdef RNA_RUNTIME
-#include "RBI_api.h"
+#ifdef WITH_BULLET
+# include "RBI_api.h"
+#endif
#include "BKE_depsgraph.h"
#include "BKE_rigidbody.h"
@@ -105,9 +107,12 @@
RigidBodyWorld *rbw = (RigidBodyWorld *)ptr->data;
rbw->num_solver_iterations = value;
-
- if (rbw->physics_world)
+
+#ifdef WITH_BULLET
+ if (rbw->physics_world) {
RB_dworld_set_solver_iterations(rbw->physics_world, value);
+ }
+#endif
}
static void rna_RigidBodyWorld_split_impulse_set(PointerRNA *ptr, int value)
@@ -115,9 +120,12 @@
RigidBodyWorld *rbw = (RigidBodyWorld *)ptr->data;
RB_FLAG_SET(rbw->flag, value, RBW_FLAG_USE_SPLIT_IMPULSE);
-
- if (rbw->physics_world)
+
+#ifdef WITH_BULLET
+ if (rbw->physics_world) {
RB_dworld_set_split_impulse(rbw->physics_world, value);
+ }
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list