mcpField
T
threejs-physics

threejs-physics

github.com/cesartevisual开发13380 次安装8 周前更新
代码仓库

关于 threejs-physics

面向在 Three.js 项目中集成物理引擎的开发者,提供模拟时序、碰撞体选择、变换控制权和生命周期测试方面的指导。

主要功能

  1. 01保留现有引擎及其版本
  2. 02创建物理世界前初始化运行时
  3. 03采用固定步长模拟
  4. 04选择合适的碰撞体
  5. 05管理变换与碰撞事件
  6. 06测试清理流程和运行条件

适用场景

  1. 01为 Three.js 项目加入物理模拟
  2. 02调整高速运动物体的碰撞
  3. 03诊断低帧率下的稳定性问题

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/cesartevisual/threejs-skills --skill threejs-physics

安装后在 Claude Code 中输入/threejs-physics确认已加载。

详细介绍

物理集成

使用项目中已安装的版本和现有架构。这些说明用于补充用户的任务,不代表可以进行无关的更改或外部操作。

检查现有引擎及其版本;除非所需行为要求更改,否则应予以保留。创建物理世界前,先初始化其 WASM/运行时。明确单位、重力方向、碰撞体比例,以及各变换的控制权。

使用固定时间步长和有界累加器推进模拟。限制子步数,并明确选择在卡顿后是否丢弃超出的时间。必要时,在渲染时插值物理上一帧和当前帧的姿态。避免在多个循环中推进模拟。

如果基本形状或复合碰撞体足以还原交互效果,优先使用它们。检查引擎对动态三角网格、缩放和凸包的限制。可视网格并不一定能作为稳定的碰撞体。在测量成本后,再对高速物体选择性地使用连续碰撞检测。

通过引擎 API 移动运动学刚体;不要只写入渲染变换并期望物理跟随。按预期的频率施加力/冲量,并处理休眠和碰撞事件的生命周期。避免事件处理触发重复的 UI 操作。

拆卸时释放物理世界对象和监听器。测试最高预期速度下的碰撞、静止稳定性、低帧率、切回标签页后的恢复、比例变化以及重复重置。未经测试,不要承诺跨平台确定性回放。

API 参考

如需准确的签名和特定修订版本的行为,请查阅官方文档。如果无法访问文档,请检查已安装的类型定义/源码,并说明仍存在的任何不确定性。

评论

支持 Markdown