Audio 如何在三个JS中播放音频
我对Three.js音频和所有相关内容都有一些问题 当你用三个js打开页面时,如何制作一个.mp3文件来播放?我没有找到任何例子,任何教程,任何东西,任何地方都没有。我有以下代码:Audio 如何在三个JS中播放音频,audio,three.js,Audio,Three.js,我对Three.js音频和所有相关内容都有一些问题 当你用三个js打开页面时,如何制作一个.mp3文件来播放?我没有找到任何例子,任何教程,任何东西,任何地方都没有。我有以下代码: var listener = new THREE.AudioListener(); camera.add( listener ); // create a global audio source var sound = new THREE.Audio( listener ); var audioLoader =
var listener = new THREE.AudioListener();
camera.add( listener );
// create a global audio source
var sound = new THREE.Audio( listener );
var audioLoader = new THREE.AudioLoader();
//Load a sound and set it as the Audio object's buffer
audioLoader.load( 'sounds/ambient.ogg', function( buffer ) {
sound.setBuffer( buffer );
sound.setLoop(true);
sound.setVolume(0.5);
sound.play();
});
如何让它播放?您应该包括:
//onProgress回调
函数(xhr){
log((xhr.loaded/xhr.total*100)+'%loaded');
},
//错误回调
功能(err){
log('Un error ha ocurrido');
}
试试下面的链接,我已经删除了音频播放不需要的大部分JavaScript代码。
它适用于m4a,但也适用于mp3和ogg格式
// Music by The War On Drugs - Thinking Of A Place
var camera, scene, renderer;
var stream = "https://cdn.rawgit.com/ellenprobst/web-audio-api-with-Threejs/57582104/lib/TheWarOnDrugs.m4a";
// init
function init() {
// scene
scene = new THREE.Scene();
scene.fog = new THREE.FogExp2(0x01131e, 0.025);
// camera
camera = new THREE.PerspectiveCamera(55, window.innerWidth / window.innerHeight, 0.01, 1000);
camera.position.set(0.1, -0.14, 0.8);
// renderer
renderer = new THREE.WebGLRenderer({ antialias: true, alpha: true });
renderer.setSize(window.innerWidth, window.innerHeight);
renderer.setClearColor("#01131E");
document.body.appendChild(renderer.domElement);
// AUDIO
var audioLoader = new THREE.AudioLoader();
var listener = new THREE.AudioListener();
var audio = new THREE.Audio(listener);
audioLoader.load(stream, function(buffer) {
audio.setBuffer(buffer);
audio.setLoop(true);
audio.play();
});
}
// animate
function animate() {
requestAnimationFrame(animate);
render();
}
// render
function render() {
renderer.render(scene, camera);
}
init();
animate();
“我没有找到任何例子”好的,谢谢。因此,该示例中的代码是:var sound4=new THREE.Audio(listener);加载('sounds/Project_Utopia.ogg',函数(buffer){sound4.setBuffer(buffer);sound4.setLoop(true);sound4.setVolume(0.5);sound4.play();});当我的代码为:var sound=new THREE.Audio(listener)时;audioLoader=新的三个。audioLoader();audioLoader.load('sounds/sound.ogg',function(buffer){sound.setBuffer(buffer);sound.setLoop(true);sound.setVolume(0.5);sound.play();});但是,不行。浏览器控制台中有任何消息吗?只有一些纹理调整无效,但与此无关。这个场景实际上是滚动的,但是没有音频。我自己没有试过,但是为什么不看看Web音频API呢?Three.js可能不是在浏览器中播放音频的最佳库。。。这就是我要开始的地方: