[原][osg][osgEarth]关于在OE中使用物理引擎的调研
关于物理引擎旋转的一些整理
参考文档
http://blog.wolfire.com/2010/03/Comparing-ODE-and-Bullet
介绍ODE和bullet的利弊
http://stackoverflow.com/questions/6408198/bullet-vs-newton-game-dynamics-vs-ode-physics-engines
讨论作者想要哪款物理引擎
https://www.ibm.com/developerworks/cn/opensource/os-physicsengines/
这里有Box2D和Bullet的详细介绍(中文)
物理引擎对比
|
引擎 |
平台|协议 |
效率|精度 |
优势 |
劣势 |
|
Chipmunk |
非常精确 |
仅支持2D |
||
|
Box2D |
开源 Zlib许可 |
用的多 |
仅支持2D |
|
|
NewTon Game Dynamics |
开源 |
|||
|
(ODE) Open Dynamics Engine |
平台多 开源 BSD许可 |
比较精确 效率低 |
提供不少飞行参数调节 文档好 成熟度高 Osg支持 |
效率太低 物体多就卡 不维护了 |
|
Bullet |
平台多,开源 Zlib许可 |
效率和精确性比ODE好 |
用的多 OpenCL支持 多线程 SIMD数学库 不断更新 AMD厂家支持 Osg支持 |
文档更新跟不上代码迭代速度 官方论坛都被墙了 |
|
Havok |
平台多,不支持mac 付费开源 |
精确性比PhysX好 |
游戏领域使用最广 Intel厂家支持 使用多核CUP算 Ogre支持 |
不支持GPU |
|
PhysX |
精确性低 效率一般 |
英伟达厂家支持 使用GPU算 Ogre支持 OSG支持 |
多线程支持不好 PC端支持不好 |
一些有用的观点:
starting with a stable, documented physics library like ODE may have given me the experience I needed to be able to understand and use a more rapidly-changing physics library like Bullet这个作者一开始使用ODE,干到一半换bullet了。
Osg的扩展工程:
http://www.osgchina.org/index.php?view=article&id=176
其中 osgBullet osgode osgRecipes都提供物理功能
OSG与物理的结合还是phsyX比较多一点,其次是
osgBullet
http://osgbullet.googlecode.com/
好像不维护了
相关文章:
http://blog.csdn.net/lh1162810317/article/details/17475297
http://www.unjeep.com/q/641844992.htm 配置bullet库
http://www.docin.com/p-1313518364.html 相关论文
http://blog.csdn.net/silangquan/article/details/9730963 不完全指南
osgode
https://sourceforge.net/projects/osgode/
OsgRecipe(包含physX)
https://github.com/xarray/osgRecipes/wiki
不断补充完善中。。。目前physX已经结合进OE了,但是感觉效率会不行,现在研究下bullet和ode就下决定了
[原][osg][osgEarth]关于在OE中使用物理引擎的调研的更多相关文章
- [原][osg][osgEarth]EarthManipulator关于oe漫游器的handle部分解读以及修改(仿照谷歌,修改oe漫游器中focal(视角切换)功能 续 二)
bool EarthManipulator::handle(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa) ...
- [原][OSG][osgBullet][osgworks][bullet]编译osgBullet尝试物理引擎
相关网址: 类似文章:http://blog.csdn.net/lh1162810317/article/details/17475297 osgBullet官网:http://osgbullet.v ...
- 实例介绍Cocos2d-x中Box2D物理引擎:HelloBox2D
我们通过一个实例介绍一下,在Cocos2d-x 3.x中使用Box2D物理引擎的开发过程,熟悉这些API的使用.这个实例运行后的场景如图所示,当场景启动后,玩家可以触摸点击屏幕,每次触摸时候,就会在触 ...
- iOS中的物理引擎
目前知名的2D物理引擎有 Box2d,和Chipmunk,这些是跨平台的.但苹果本身也封装了一个物理引擎, UIDynamic是从iOS 7开始引入的一种新技术,隶属于UIKit框架.这可以让开发人员 ...
- 实例介绍Cocos2d-x中Box2D物理引擎:使用关节
下面我们将使用Box2D物理引擎技术进行重构.使得关节能够掌握如何在Box2D使用关节约束.HelloWorldScene.cpp中与使用关节的相关代码如下: void HelloWorld::add ...
- 实例介绍Cocos2d-x中Box2D物理引擎:碰撞检测
在Box2D中碰撞事件通过实现b2ContactListener类函数实现,b2ContactListener是Box2D提供的抽象类,它的抽象函数:virtual void BeginContact ...
- cocos2dx 3.2中的物理引擎初探(一)
cocos2dx在设计之初就集成了两套物理引擎,它们是box2d和chipmunk.我目前使用的是最新版的cocos2dx 3.2.引擎中默认使用的是chipmunk,如果想要改使用box2d的话,需 ...
- cocos2d-js中Chipmunk物理引擎相关(1)
近期看些cocos2d-js的东西.用到当中的Chipmunk的一些东西.由于相关的资料也不是非常具体,所以看到一些东西实用就记录下来. 1. chipmunk是cocos2d的一个一个物理引擎.用来 ...
- 实例介绍Cocos2d-x中Box2D物理引擎:碰撞检測
在Box2D中碰撞事件通过实现b2ContactListener类函数实现,b2ContactListener是Box2D提供的抽象类,它的抽象函数:virtual void BeginContact ...
随机推荐
- 机器学习理论基础学习3.5--- Linear classification 线性分类之朴素贝叶斯
一.什么是朴素贝叶斯? (1)思想:朴素贝叶斯假设 条件独立性假设:假设在给定label y的条件下,特征之间是独立的 最简单的概率图模型 解释: (2)重点注意:朴素贝叶斯 拉普拉斯平滑 ...
- 改善深层神经网络_优化算法_mini-batch梯度下降、指数加权平均、动量梯度下降、RMSprop、Adam优化、学习率衰减
1.mini-batch梯度下降 在前面学习向量化时,知道了可以将训练样本横向堆叠,形成一个输入矩阵和对应的输出矩阵: 当数据量不是太大时,这样做当然会充分利用向量化的优点,一次训练中就可以将所有训练 ...
- zookeeper简单实战
一.安装(单机模式.集群模式.伪集群模式) 1:安装JDK 2:解压zk压缩包 3:在conf目录下创建zoo.cfg配置文件. 设置超时时间,快照目录,事务日志文件目录,对外端口,服务IP 4:启动 ...
- AOAPC I: Beginning Algorithm Contests -- Training Guide (Rujia Liu) Chapter 3. Data Structures Fundamental Data Structures
10410 这题说的是给了一棵多叉树的 bfs遍历轨迹 和dfs 遍历 轨迹 在父节点向叶子节点扩展的时候优先遍历编号较小的节点.我还原出这课树特殊判定 根据bfs的顺序来建立这课树,用一个队列安排要 ...
- Intro to Python for Data Science Learning 5 - Packages
Packages From:https://campus.datacamp.com/courses/intro-to-python-for-data-science/chapter-3-functio ...
- isKindOfClass和isMemberOfClass 的区别
判断对象类型 -(BOOL) isKindOfClass: classObj判断是否是这个类或者这个类的子类的实例 -(BOOL) isMemberOfClass: classObj 判断是否是这个类 ...
- CAReplicatorLayer
CAReplicatorLayer CAReplicatorLayer的目的是为了高效生成许多相似的图层.它会绘制一个或多个图层的子图层,并在每个复制体上应用不同的变换.看上去演示能够更加解释这些,我 ...
- Linux命令: 结束命令
1)ctrl+c,退出命令 2)q,退出文件
- 安装vscode with springboot
1.安装jdk8 2.下载vscode,一切按照默认配置完成安装.下载地址:https://code.visualstudio.com 3.安装完成后,运行vscode.如果没有任何反应,在命令行上运 ...
- iphone6 inline-flex兼容问题
在编写微信端页面时,遇到这样的问题:position属性为flex的导航栏,其li标签在其余设备上显示正常,但在iphone6上浮动错误. 究其原因,是iphone6不支持position属性中的fl ...