bullet3
文章平均质量分 68
物理引擎
Sanada Hiroyuki
这个作者很懒,什么都没留下…
展开
-
bullet constraints bullet 约束
constraints 约束bullet 中实现了几个约束。有关每个示例,请参见示例/约束演示。包括 btRaycastVehicle 在内的所有约束都源自 btTypedConstraint。两个刚体之间的约束作用,其中至少有一个刚体需要是动态的。Point to Point Constraint 点对点约束点到点约束限制平移,以便两个刚体的局部轴心点在世界空间中匹配。可以使用此约束连接刚体链。btPoint2PointConstraint(btRigidBody& rbA, const原创 2022-01-26 12:56:38 · 1331 阅读 · 0 评论 -
bullet 库的概述
Library Overview 库的概述Introduction 简介物理引擎的主要任务是执行碰撞检测、解决碰撞和其他约束,并为所有对象提供更新的世界变换。本章将概述刚体动力学管道以及所有组件共享的基本数据类型和数学库Software Design 软件设计bullet 被设计成可定制和模块化的。开发者可以仅使用碰撞检测组件使用没有软体动力学组件的刚体动力学组件仅使用库的一小部分并以多种方式扩展库选择使用单精度或双精度版本的库使用自定义内存分配器,连接自己的性能分析器或调试抽屉Ri原创 2022-01-24 14:34:33 · 784 阅读 · 0 评论 -
bullet physics SDK 简介
Introduction 简介Description of the library 库的描述bullet physics 是一个专业的开源的碰撞检测、刚体和软体动力学库,用便携式C++编写。该库主要设计用于游戏、视觉效果和机器人模拟。该库在 ZLib 许可下可免费用于商业用途。Main Features 主要特征离散和连续碰撞检测,包括射线和凸扫描测试。碰撞形状包括凹面和凸面网格以及所有基本图元通过约束(btTypedConstraint)连接的最大坐标6自由度刚体(btRigidBody)以及原创 2022-01-24 12:55:32 · 1801 阅读 · 0 评论 -
Actions: Vehicles & Character Controller 动作:载具和角色控制器
Action Interface 动作界面在某些情况下,在物理管道中处理一些自定义物理游戏代码很有用。虽然可以使用刻度回调,担当由多个对象要更新时,从 btActionInterface 派生自定义类会更方便。并实现 btActionInterface::updateAction(btCollisionWorld* world, btScalar deltaTime);有内置示例 btRaycastVehicle 和 btKinematicCharacterController 正在使用此 btActio原创 2022-01-24 12:00:09 · 2681 阅读 · 0 评论 -
Rigid Body Dynamics 刚体动力学
Rigid Body Dynamics 刚体动力学Introduction 引入刚体动力学是在碰撞检测模块之上实现的。它增加了力、质量、惯性、速度和约束。btRigidBody 用于模拟单个 6 自由度运动物体。btRigidBody 派生自 btCollisionObject,因此它继承了它的世界变换、摩擦和恢复,并增加了线速度和角速度。btTypedConstraint 是刚体约束的基类,包括 btHingeConstraint, btPoint2PointConstraint, btCone原创 2022-01-24 11:02:45 · 876 阅读 · 0 评论 -
Collision Filtering(selective collisions) 碰撞过滤(选择性碰撞)
Collision Filtering(selective collisions) 碰撞过滤(选择性碰撞)Bullet 提供了三种简单的方法来确保只有某些对象相互碰撞:masks, broadphase filter callbacks, nearcallbacks值得注意的是,mask-based collision selection发生在工具链的上游,而不是回调。简而言之,如果mask足以满足您的目的,请使用它们;它们性能更好,使用起来更简单。当然,不要因为提高性能,就试图将某些东西硬塞到mas原创 2022-01-24 09:37:18 · 1696 阅读 · 0 评论 -
HelloWorld 代码结构梳理
initialization Create a btDiscreteDynamicsWorld or btSoftRigidDynamicsWorldbtDefaultCollisionConfiguration * and btCollisionDispatcher * 碰撞设置和碰撞调度器btDefaultCollisionConfiguration * collisionConfiguration = new btDefaultCollisionConfiguration();btCollis原创 2022-01-21 17:56:01 · 85 阅读 · 0 评论 -
bullet3 代码结构梳理
Bullet/src/LinearMathbtScalar默认情况下 btScalar 是一个 float 定义通过在顶部定义 BT_USE_DOUBLE_PRECISION 可以成为 double 定义btVector3btVector3 由 x, y, z 三个标量组成btVector3 可以表示 3D 位置和矢量btVector3 含有第四个未使用的 w 分量btQuaternion 和 btMatrix3x3btQuaternion 和 btMatrix3x3 可以原创 2022-01-21 17:53:41 · 309 阅读 · 0 评论