bullet结合cocos2dx学习
文章平均质量分 91
bullet世界三大物理引擎之一,开源免费。
结合cocos2dx学习bullet.
阿波阿波
这个作者很懒,什么都没留下…
展开
-
Bullet之了解Force Torque Impulse
在了解Force Impulse Torque 之前,先来看看setLinearVelocity,setAngularVelocity一个是线速度,一个是角速度理解起来是很简单的设置body的线速度和角速度// 线速度const btVector3 & getLinearVelocity () constvoid setLinearVelocity (const btVecto原创 2015-01-14 00:01:05 · 2417 阅读 · 0 评论 -
Bullet(Cocos2dx)之创建地形
Bullet提供了几个类btBvhTriangleMeshShape,btHeightfieldTerrainShape去创建一些网格图形,首先了解btHeightfieldTerrainShape,通过高度图数据创建一个3D地形。A static mesh that is optimised for and described by the surface of a height map.原创 2015-01-09 19:45:12 · 3042 阅读 · 1 评论 -
Bullet(Cocos2dx)之分析刚体创建与销毁(Primitives)
相关链接:http://bulletphysics.org/mediawiki-1.5.8/index.php/Collision_ShapesBullet基本图形简介Bullet提供的基本图形包括球体、长方体、圆柱体、胶囊体、圆锥体、多球体当然还有一个Plane,一个无限的平面 1.球体是个很简单的形状:btSphereShape (btScalar radius) 提供原创 2015-01-07 16:36:36 · 1920 阅读 · 0 评论 -
Bullet(Cocos2dx)之优化PhysicsDraw3D
为了测试bullet物体的大小,匆匆写完的PhysicsDraw3D的效率低的要命,这也是为什么cocos2dx弃用了DrawPrimitives,而去使用DrawNodeDrawPrimitives每次绘制都去调用glDrawElements,假如每帧绘制10000条线段,那么就要调用10000次glDrawElements,可见效率之低。而DrawNode采取的是批处理的方式,当dra原创 2015-01-06 20:01:31 · 1570 阅读 · 0 评论 -
Bullet(Cocos2dx)之增加调试绘制PhysicsDraw3D
由于刚开始学的时候不知道Bullet的单位1.0代表多大,所以制作出的模型的大小也无法判断。不用担心,Bullet提供了一个类btIDebugDraw,这个泪已经实现了很多绘制功能,我们要做的就是实现几个虚函数。我们继承btIDebugDraw,实现虚函数class PhysicsDraw3D : public btIDebugDraw{public: void drawLine原创 2015-01-06 15:50:35 · 1855 阅读 · 0 评论 -
Bullet(Cocos2dx)之使用cocos2dx测试PhysicsWorld3D
1.使用Cocos引擎建立工程,打开cocos studio 修改分辨率为960*640,删掉背景图片发布到vs工程1.打开AppDelegate设置分辨率,并运行 director->getOpenGLView()->setDesignResolutionSize(960, 640, ResolutionPolicy::EXACT_FIT);2.配置Bullet(原创 2015-01-04 19:55:06 · 1684 阅读 · 0 评论 -
Bullet(Cocos2dx)之封装PhysicsWorld3D
Bullet3之封装PhysicsWorld3D根据bullet3 HelloWorld程序去封装一个PhysicsWorld3D,首先应该去创建一个物理世界,而对于一个物理世界,默认都有重力,提供一个创建世界的静态方法(重力默认为(0, -10, 0))static PhysicsWorld3D* create(const btVector3& gravity = btVecto原创 2015-01-04 13:17:10 · 1474 阅读 · 0 评论 -
Bullet(Cocos2dx)之交叉编译Android,集成到cocos2dx3.x
首先将src文件夹复制到jni文件夹,没有可以新建一个新建两个文件Android.mk, Application.mkApplication.mk内容如下:APP_ABI := armeabi armeabi-v7a x86APP_PLATFORM := android-8APP_STL := stlport_static Android.mk 内容如下: LO原创 2014-12-30 20:17:52 · 2074 阅读 · 0 评论 -
Bullet(Cocos2dx)之Hello World(vs2012)
Bullet3之Hello World(vs2012)参考http://bulletphysics.org/mediawiki-1.5.8/index.php/Creating_a_project_from_scratch第一步、生成vs2010工程文件解压github下载的bullet3-master,进入目录build3,运行vs2010.bat会在当前目录生成vs2010原创 2014-12-20 20:21:37 · 2034 阅读 · 1 评论