基于OSG和Bullet的船舶碰撞响应三维仿真
2014-04-09关克平江靖楠吴天裕陈锦标
上海海事大学学报 2014年4期
关克平, 江靖楠, 吴天裕, 陈锦标
(上海海事大学 商船学院,上海 201306)
0 引 言
随着国际航运业和现代造船技术的不断发展,船舶大型化、高速化趋势明显,通航密度也越来越大,通航安全问题备受瞩目.[1]为提高海上航行安全,降低海事事故发生率,通常运用航海模拟器对船员进行培训和评估.国际海事组织发布的《STCW公约》马尼拉修正案对航海模拟器提出更高的设备要求,完善航海模拟器的功能迫在眉睫.碰撞检测和碰撞响应是航海模拟器的关键技术之一,目前的模拟系统对碰撞后的船舶往往只做简单的停船处理,碰撞响应视景真实感欠缺.[2]若能有效解决船舶碰撞响应的真实感问题,则可进一步完善航海模拟器的性能,提高船员应急情况下的模拟操纵能力.针对该问题,笔者提出将开源场景图形(OpenSceneGraph,OSG)三维渲染引擎与Bullet物理引擎结合的技术方案,研究三维碰撞响应算法,最终将该方案成功应用于航海模拟器的视景系统中.
1 技术支持
1.1 OSG
OSG扩展功能突出,跨平台性和可移植性好,且具备良好的场景管理和图形渲染优化功能,能实时高效绘制并控制三维模型,支持多类型外接设备.[3]目前,国内多数航海模拟器的三维视景系统是基于OSG开发的.
1.2 Bullet
物理引擎通过为刚性或柔性物体赋予真实物理属性的方式,计算物体的运动、旋转和碰撞反应.[4]世界三大物理引擎分别为Havok,PhysX和Bullet,其中Bullet是一个开源的、易扩展的动力学类库,可有效解决虚拟环境中可移动物……
登录APP查看全文
