Bullet physics物理引擎学习笔记

本文记录了在学习Bullet物理引擎过程中的一些关键点,包括collisionshape与rigidbody的区别,如何在dynamicworld中设置刚体位置,以及如何处理3D模型的质心计算。还探讨了 Bullet的坐标系、变换、碰撞检测优化和旋转表示等内容。
摘要由CSDN通过智能技术生成

Bullet 物理引擎的参考文档比较少,主要是通过学习Bullet自带的例子来学习。以下是我在学习中遇到的一些困惑和自己的理解:

1. collisionshape和rigidbody的区别:

碰撞形状顾名思义只需要指定碰撞体的形状,常用的碰撞体形状有:btBoxShape等。

刚体要指定的信息比较多,包括质量,运动状态,碰撞体形状,惯性。多个刚体可能共用相同的碰撞形状。

2. 在dynamicworld中设置刚体的位置

先将物体位置通过setIdentity()初始化为0,然后通过setOrigin(btVector3 pos)来设置物体质的位置。特别需要注意的,btBoxShape( const btVector3& boxHalfExtents),这个函数形参是半个box的大小。

3. 通过导入obj等三维模型在bullet中创建刚体时bullet会计算自动该刚体的质心,非常强大!

4.The world transform of a rigid body is in Bullet always equal to its center of mass, and its basis also defines its local frame for inertia.

    World transform of the center of mass for rigid bodies, transformed vertices for soft bodies

    ATTRIBUTE_ALIGNED16(type) variablename creates a 16-byte aligned variable

5.Bullet uses a small collision margin for collision shapes, to improve perform

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值