three.js Audio 小结

94 阅读1分钟

Audio API 能做什么

  • 在three中播放音频
  • 使音频具有立体感
  • 控制音频
  • 提供音频的buffer级操作

基本示例


// 创建一个 AudioListener 并将其添加到 camera 中
const listener = new THREE.AudioListener();
camera.add( listener );

// 创建一个全局 audio 源
const sound = new THREE.Audio( listener );

// 加载一个 sound 并将其设置为 Audio 对象的缓冲区
const audioLoader = new THREE.AudioLoader();
audioLoader.load( 'sounds/ambient.ogg', function( buffer ) {
	sound.setBuffer( buffer );
	sound.setLoop( true );
	sound.setVolume( 0.5 );
	sound.play();
});


音频中对象

  • Audio 用来创建音频
  • AudioListener 将音频与 3d 空间连接
  • AudioAnalyser 分析音频数据
  • AudioContext 对音频的 buffer 进行操作
  • PositionalAudio 设置音频 3D 位置