threejs-audio

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

When to use this skill

何时使用此 skill

ALWAYS use this skill when the user mentions:
  • AudioListener
    on
    Camera
    ,
    Audio
    vs
    PositionalAudio
    , distance models, refDistance/maxDistance/rolloff
  • AudioAnalyser
    for visualization bars/spectrum
  • Browser autoplay policies blocking audio start
IMPORTANT: audio vs loaders
StepSkill
Decode mp3/ogg bufferthreejs-loaders (
AudioLoader
)
Spatial playback APIthreejs-audio
Trigger phrases include:
  • "PositionalAudio", "AudioListener", "AudioAnalyser", "panner"
  • "空间音频", "音量衰减", "频谱"
当用户提到以下内容时,始终使用此 skill:
  • AudioListener
    附加到
    Camera
    ,
    Audio
    与
    PositionalAudio
    的区别,距离模型,
    refDistance/maxDistance/rolloff
  • 使用
    AudioAnalyser
    生成可视化条/频谱
  • 浏览器 autoplay 策略阻止音频启动
重要:音频与 loaders
步骤Skill
解码 mp3/ogg bufferthreejs-loaders(
AudioLoader
)
空间播放 APIthreejs-audio
触发短语包括:
  • “PositionalAudio”、“AudioListener”、“AudioAnalyser”、“panner”
  • “空间音频”、“音量衰减”、“频谱”

How to use this skill

如何使用此 skill

  1. Attach listener to camera object so head-related audio follows view.
  2. Create context compatible with user gesture unlock patterns in browsers.
  3. PositionalAudio: set
    refDistance
    ,
    maxDistance
    ,
    rolloffFactor
    ,
    distanceModel
    per docs.
  4. Load buffer via
    AudioLoader
    (threejs-loaders), then
    positionalAudio.setBuffer
    .
  5. Analyser: connect graph
    listener.context.createAnalyser()
    pathways per examples; watch performance.
  6. Update: audio nodes usually need no per-frame update unless following moving sources manually.
See examples/workflow-positional-audio.md.
  1. 将 listener 附加到 camera 对象,使 head-related audio 跟随视角。
  2. 创建 context,并确保其兼容浏览器中的 user gesture 解锁模式。
  3. PositionalAudio:按照文档设置
    refDistance
    、
    maxDistance
    、
    rolloffFactor
    、
    distanceModel
    。
  4. 通过
    AudioLoader
    (threejs-loaders)加载 buffer,然后调用
    positionalAudio.setBuffer
    。
  5. Analyser:按照示例连接
    listener.context.createAnalyser()
    所在的 graph 路径;注意性能开销。
  6. 更新:除非手动跟随移动中的声源,否则 audio nodes 通常不需要逐帧更新。
请参阅 examples/workflow-positional-audio.md。

Doc map (official)

官方文档导航

Scope

范围

  • In scope: Core Audio classes, spatialization parameters, analyser usage overview.
  • Out of scope: FMOD/Wwise-style authoring tools.
  • 包含范围: 核心 Audio 类、空间化参数以及 analyser 用法概览。
  • 不包含范围: FMOD/Wwise 类型的创作工具。

Common pitfalls and best practices

常见问题与最佳实践

  • Autoplay restrictions require user interaction to resume AudioContext.
  • Too many positional sources hurt CPU—pool or LOD audio.
  • Ensure world units match distance model expectations.
  • autoplay 限制要求通过用户交互恢复 AudioContext。
  • 过多的 positional sources 会影响 CPU 性能——可使用对象池或 LOD audio。
  • 确保 world units 与距离模型的预期相匹配。

Documentation and version

文档与版本

Audio classes are under Audio in three.js docs. Decoding buffers uses
AudioLoader
—see threejs-loaders. Browser Web Audio policies are external but must be mentioned when
AudioContext
is suspended.
音频类位于 three.js 文档的 Audio 章节下。解码 buffer 使用
AudioLoader
——参见 threejs-loaders。浏览器的 Web Audio 策略属于外部限制,但当
AudioContext
处于 suspended 状态时必须加以说明。

Agent response checklist

Agent 响应检查清单

When answering under this skill, prefer responses that:
  1. Link
    AudioListener
    ,
    PositionalAudio
    , or
    AudioAnalyser
    as relevant.
  2. Delegate file loading of sound buffers to threejs-loaders (
    AudioLoader
    ).
  3. Note autoplay / user-gesture requirements for resuming context.
  4. Relate distance attenuation to world units and threejs-objects placement.
  5. Avoid promising DAW-level mixing—stay within three.js audio scope.
在此 skill 下回答时,优先采用以下方式:
  1. 根据实际情况链接
    AudioListener
    、
    PositionalAudio
    或
    AudioAnalyser
    的相关文档。
  2. 将 sound buffer 的文件加载工作委托给 threejs-loaders(
    AudioLoader
    )。
  3. 说明恢复 context 时的 autoplay/user-gesture 要求。
  4. 将距离衰减与 world units 以及 threejs-objects 的放置方式关联起来。
  5. 避免承诺 DAW 级别的混音能力——保持在 three.js audio 的范围内。

References

参考资料

Keywords

关键词

English: audio, positional audio, listener, analyser, spatial sound, web audio, three.js
中文: 音频、空间音频、AudioListener、PositionalAudio、Web Audio、three.js
英文: audio、positional audio、listener、analyser、spatial sound、web audio、three.js
中文: 音频、空间音频、AudioListener、PositionalAudio、Web Audio、three.js