mcpField
T
threejs-audio

threejs-audio

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

关于 threejs-audio

threejs-audio 是一项为 Three.js 项目实现空间音频提供指导的技能,面向开发者。内容涵盖播放生命周期、定位音效、无障碍、故障处理和验证,并要求遵循项目现有架构。

主要功能

  1. 01区分信息性音频与环境音
  2. 02提供静音、音量和文本替代
  3. 03将音频监听器附加到当前视点
  4. 04异步加载音频并处理失败
  5. 05协调播放与应用及 XR 生命周期
  6. 06验证自动播放、衰减和重复触发

适用场景

  1. 01为 Three.js 场景添加定位音效
  2. 02避免自动播放受阻导致场景故障
  3. 03管理摄像机或 XR 转换期间的音频
  4. 04测试重复挂载和快速音效触发

安装

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

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

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

详细介绍

空间音频

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

确认音频是用于传达信息,还是仅提供可选氛围音。在 HTML 中提供静音和音量控制,以及任何必需的文本等效内容。通过用户交互启动或恢复音频,并妥善处理自动播放被拒绝的情况,避免场景无法正常运行。

将监听器附加到当前视点,并在摄像机变更时避免重复创建监听器或输出路径。对于位置音源,应根据场景单位选择距离、衰减和方向锥。位置音源不会自动模拟墙体遮挡。

异步加载和解码,并明确处理失败和过时结果。限制并发音源数量,并在适当时复用缓冲区。避免在碰撞的每一帧都重复播放声音;应在有意义的状态转换时触发播放。

协调播放与暂停、可见性变更、路由转换和 XR 会话转换。停止并断开自有音源,并释放监听器。不要关闭与应用其他部分共享的 AudioContext。

验证自动播放被阻止、首次交互、静音状态持久化、摄像机移动时的衰减、快速重复触发,以及反复挂载和卸载。空间音频至关重要时,应在实际输出设备上测量感知音量。

API 参考

有关确切签名和特定版本的行为,请参阅官方文档。如果无法访问文档,请检查已安装的类型定义或源码,并说明仍存在的任何不确定之处。

评论

支持 Markdown