[DEV] Basic integration of the bullet librairy
This commit is contained in:
parent
896cdf4891
commit
a781cf4c26
3
.gitmodules
vendored
3
.gitmodules
vendored
@ -38,3 +38,6 @@
|
||||
[submodule "external/z/zlib"]
|
||||
path = external/z/zlib
|
||||
url = https://github.com/madler/zlib.git
|
||||
[submodule "external/bullet/bullet"]
|
||||
path = external/bullet/bullet
|
||||
url = https://github.com/HeeroYui/bullet.git
|
||||
|
@ -7,6 +7,7 @@ TMP_DIR := $(shell readlink -m -n $(patsubst %/,%,$(dir $(lastword $(MAKEFILE_LI
|
||||
EWOL_FOLDER:=$(TMP_DIR)
|
||||
USER_PACKAGES+= $(TMP_DIR)/sources/
|
||||
# Add external librairy (direct folder to reduce the search time (really special case for windows ...))
|
||||
USER_PACKAGES+= $(TMP_DIR)/external/bullet
|
||||
USER_PACKAGES+= $(TMP_DIR)/external/etk
|
||||
USER_PACKAGES+= $(TMP_DIR)/external/agg
|
||||
USER_PACKAGES+= $(TMP_DIR)/external/freetype
|
||||
|
2
build
2
build
@ -1 +1 @@
|
||||
Subproject commit 22c1c9d19709f643d3032bb5d7a42ea55924d50b
|
||||
Subproject commit 2147015fbc38ee63e65b822ab8d2819ca782ed80
|
21
external/bullet/Generic.mk
vendored
Normal file
21
external/bullet/Generic.mk
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
LOCAL_PATH := $(call my-dir)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
|
||||
LOCAL_MODULE := bullet
|
||||
|
||||
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)
|
||||
|
||||
LOCAL_C_INCLUDES := $(LOCAL_PATH)/bullet/src/ \
|
||||
$(LOCAL_PATH)/bullet/Extras/ConvexDecomposition
|
||||
|
||||
LOCAL_CFLAGS := -Wno-write-strings \
|
||||
-DHAVE_CONFIG_H
|
||||
|
||||
|
||||
# load the common sources file of the platform
|
||||
include $(LOCAL_PATH)/file.mk
|
||||
|
||||
LOCAL_SRC_FILES := $(FILE_LIST)
|
||||
|
||||
include $(BUILD_STATIC_LIBRARY)
|
1
external/bullet/bullet
vendored
Submodule
1
external/bullet/bullet
vendored
Submodule
@ -0,0 +1 @@
|
||||
Subproject commit 6930931f46f9846c6f4f7031e416205cd0fdb4b4
|
173
external/bullet/file.mk
vendored
Normal file
173
external/bullet/file.mk
vendored
Normal file
@ -0,0 +1,173 @@
|
||||
|
||||
|
||||
# lib LinearMath
|
||||
FILE_LIST = \
|
||||
bullet/src/LinearMath/btQuickprof.cpp \
|
||||
bullet/src/LinearMath/btGeometryUtil.cpp \
|
||||
bullet/src/LinearMath/btAlignedAllocator.cpp \
|
||||
bullet/src/LinearMath/btSerializer.cpp \
|
||||
bullet/src/LinearMath/btConvexHull.cpp \
|
||||
bullet/src/LinearMath/btPolarDecomposition.cpp \
|
||||
bullet/src/LinearMath/btVector3.cpp \
|
||||
bullet/src/LinearMath/btConvexHullComputer.cpp
|
||||
|
||||
# lib BulletCollision
|
||||
FILE_LIST+= \
|
||||
bullet/src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp \
|
||||
bullet/src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp \
|
||||
bullet/src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp \
|
||||
bullet/src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp \
|
||||
bullet/src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp \
|
||||
bullet/src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp \
|
||||
bullet/src/BulletCollision/NarrowPhaseCollision/btConvexCast.cpp \
|
||||
bullet/src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp \
|
||||
bullet/src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp \
|
||||
bullet/src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp \
|
||||
bullet/src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp \
|
||||
bullet/src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btCollisionObject.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btGhostObject.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btManifoldResult.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btUnionFind.cpp \
|
||||
bullet/src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btTetrahedronShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btShapeHull.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btCompoundShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btConeShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btConvexPolyhedron.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btMultiSphereShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btUniformScalingShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btSphereShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btTriangleMeshShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btTriangleBuffer.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btStaticPlaneShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btEmptyShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btCollisionShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btConvexShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btConvex2dShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btConvexInternalShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btConvexHullShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btTriangleCallback.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btCapsuleShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btConcaveShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btBoxShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btBox2dShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btOptimizedBvh.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btCylinderShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btStridingMeshInterface.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp \
|
||||
bullet/src/BulletCollision/CollisionShapes/btTriangleMesh.cpp \
|
||||
bullet/src/BulletCollision/BroadphaseCollision/btAxisSweep3.cpp \
|
||||
bullet/src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp \
|
||||
bullet/src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp \
|
||||
bullet/src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp \
|
||||
bullet/src/BulletCollision/BroadphaseCollision/btDispatcher.cpp \
|
||||
bullet/src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp \
|
||||
bullet/src/BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp \
|
||||
bullet/src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp \
|
||||
bullet/src/BulletCollision/BroadphaseCollision/btDbvt.cpp \
|
||||
bullet/src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp \
|
||||
bullet/src/BulletCollision/Gimpact/btGImpactBvh.cpp \
|
||||
bullet/src/BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp \
|
||||
bullet/src/BulletCollision/Gimpact/btTriangleShapeEx.cpp \
|
||||
bullet/src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp \
|
||||
bullet/src/BulletCollision/Gimpact/btGImpactShape.cpp \
|
||||
bullet/src/BulletCollision/Gimpact/gim_box_set.cpp \
|
||||
bullet/src/BulletCollision/Gimpact/gim_contact.cpp \
|
||||
bullet/src/BulletCollision/Gimpact/gim_memory.cpp \
|
||||
bullet/src/BulletCollision/Gimpact/gim_tri_collision.cpp
|
||||
|
||||
|
||||
|
||||
# lib BulletDynamics
|
||||
FILE_LIST+= \
|
||||
bullet/src/BulletDynamics/Dynamics/btRigidBody.cpp \
|
||||
bullet/src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp \
|
||||
bullet/src/BulletDynamics/Dynamics/Bullet-C-API.cpp \
|
||||
bullet/src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp \
|
||||
bullet/src/BulletDynamics/ConstraintSolver/btGearConstraint.cpp \
|
||||
bullet/src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp \
|
||||
bullet/src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp \
|
||||
bullet/src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp \
|
||||
bullet/src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp \
|
||||
bullet/src/BulletDynamics/ConstraintSolver/btTypedConstraint.cpp \
|
||||
bullet/src/BulletDynamics/ConstraintSolver/btContactConstraint.cpp \
|
||||
bullet/src/BulletDynamics/ConstraintSolver/btSliderConstraint.cpp \
|
||||
bullet/src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp \
|
||||
bullet/src/BulletDynamics/ConstraintSolver/btHingeConstraint.cpp \
|
||||
bullet/src/BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp \
|
||||
bullet/src/BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp \
|
||||
bullet/src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp \
|
||||
bullet/src/BulletDynamics/Vehicle/btWheelInfo.cpp \
|
||||
bullet/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp \
|
||||
bullet/src/BulletDynamics/Character/btKinematicCharacterController.cpp
|
||||
|
||||
|
||||
# lib BulletSoftBody
|
||||
FILE_LIST+= \
|
||||
bullet/src/BulletSoftBody/btDefaultSoftBodySolver.cpp \
|
||||
bullet/src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp \
|
||||
bullet/src/BulletSoftBody/btSoftBody.cpp \
|
||||
bullet/src/BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp \
|
||||
bullet/src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp \
|
||||
bullet/src/BulletSoftBody/btSoftRigidDynamicsWorld.cpp \
|
||||
bullet/src/BulletSoftBody/btSoftBodyHelpers.cpp \
|
||||
bullet/src/BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp
|
||||
|
||||
# lib gimpactutils
|
||||
FILE_LIST+= \
|
||||
bullet/Extras/GIMPACTUtils/btGImpactConvexDecompositionShape.cpp
|
||||
|
||||
# lib convexdecomposition
|
||||
FILE_LIST+= \
|
||||
bullet/Extras/ConvexDecomposition/concavity.cpp \
|
||||
bullet/Extras/ConvexDecomposition/ConvexDecomposition.cpp \
|
||||
bullet/Extras/ConvexDecomposition/vlookup.cpp \
|
||||
bullet/Extras/ConvexDecomposition/bestfit.cpp \
|
||||
bullet/Extras/ConvexDecomposition/ConvexBuilder.cpp \
|
||||
bullet/Extras/ConvexDecomposition/cd_hull.cpp \
|
||||
bullet/Extras/ConvexDecomposition/raytri.cpp \
|
||||
bullet/Extras/ConvexDecomposition/splitplane.cpp \
|
||||
bullet/Extras/ConvexDecomposition/float_math.cpp \
|
||||
bullet/Extras/ConvexDecomposition/planetri.cpp \
|
||||
bullet/Extras/ConvexDecomposition/cd_wavefront.cpp \
|
||||
bullet/Extras/ConvexDecomposition/bestfitobb.cpp \
|
||||
bullet/Extras/ConvexDecomposition/meshvolume.cpp \
|
||||
bullet/Extras/ConvexDecomposition/fitsphere.cpp
|
||||
|
||||
|
||||
# lib HACD
|
||||
FILE_LIST+= \
|
||||
bullet/Extras/HACD/hacdGraph.cpp \
|
||||
bullet/Extras/HACD/hacdHACD.cpp \
|
||||
bullet/Extras/HACD/hacdICHull.cpp \
|
||||
bullet/Extras/HACD/hacdManifoldMesh.cpp
|
||||
|
||||
|
@ -12,7 +12,7 @@ LOCAL_VERSION=$(shell cat $(LOCAL_PATH)/tag)
|
||||
$(info [TAG:$(LOCAL_MODULE)] $(LOCAL_VERSION))
|
||||
|
||||
# name of the dependency
|
||||
LOCAL_LIBRARIES := etk freetype tinyxml libzip libpng parsersvg lua portaudio
|
||||
LOCAL_LIBRARIES := etk freetype tinyxml libzip libpng parsersvg lua portaudio bullet
|
||||
|
||||
LOCAL_C_INCLUDES :=
|
||||
|
||||
|
@ -22,8 +22,9 @@
|
||||
|
||||
|
||||
widget::Scene::Scene(game::Engine* gameEngine) :
|
||||
m_dynamicsWorld(NULL),
|
||||
m_camera(vec3(-6,0,2), vec3(0,0,0)),
|
||||
m_gameEngine(gameEngine),
|
||||
//m_gameEngine(gameEngine),
|
||||
m_isRunning(true),
|
||||
m_lastCallTime(-1),
|
||||
m_walk(0)
|
||||
|
@ -18,13 +18,16 @@
|
||||
#include <ewol/game/Camera.h>
|
||||
#include <ewol/widget/Widget.h>
|
||||
|
||||
class btDynamicsWorld;
|
||||
|
||||
namespace widget {
|
||||
class Scene :public ewol::Widget
|
||||
{
|
||||
protected:
|
||||
///this is the most important class
|
||||
btDynamicsWorld* m_dynamicsWorld;
|
||||
game::Camera m_camera; //!< Display point of view
|
||||
game::Engine* m_gameEngine; //!< display engine system
|
||||
//game::Engine* m_gameEngine; //!< display engine system
|
||||
bool m_isRunning; //!< the display is running (not in pause)
|
||||
double m_lastCallTime; //!< previous call Time
|
||||
float m_ratioTime; //!< Ratio time for the speed of the game ...
|
||||
|
Loading…
x
Reference in New Issue
Block a user