three.js AudioLoader

2023-02-16 17:43 更新

用來加載 AudioBuffer的一個類。 內(nèi)部默認使用FileLoader來加載文件。

代碼示例

// 初始化一個監(jiān)聽
const audioListener = new THREE.AudioListener();

// 把監(jiān)聽添加到camera
camera.add( audioListener );

// 初始化音頻對象
const oceanAmbientSound = new THREE.Audio( audioListener );

// 添加一個音頻對象到場景中
scene.add( oceanAmbientSound );

// 初始化一個加載器
const loader = new THREE.AudioLoader();

// 加載資源
loader.load(
	// 資源URL
	'audio/ambient_ocean.ogg',

	// onLoad回調(diào)
	function ( audioBuffer ) {
		// 給一個加載器對象設(shè)置音頻對象的緩存
		oceanAmbientSound.setBuffer( audioBuffer );

		// 播放音頻
		oceanAmbientSound.play();
	},

	// onProgress回調(diào)
	function ( xhr ) {
		console.log( (xhr.loaded / xhr.total * 100) + '% loaded' );
	},

	// onError回調(diào)
	function ( err ) {
		console.log( 'An error happened' );
	}
);

構(gòu)造函數(shù)

AudioLoader( manager : LoadingManager )

manager — 加載器使用的loadingManager。默認為THREE.DefaultLoadingManager.創(chuàng)建一個新的AudioLoader.

屬性

共有屬性請參見其基類Loader。

方法

共有方法請參見其基類Loader。

.load ( url : String, onLoad : Function, onProgress : Function, onError : Function ) : undefined

url — 文件的URL或者路徑,也可以為 Data URI.
onLoad — 加載完成時將調(diào)用?;卣{(diào)參數(shù)為將要加載的響應(yīng)文本。
onProgress — 將在加載過程中進行調(diào)用。參數(shù)為XMLHttpRequest實例,實例包含total和loaded字節(jié).
onError — 在加載錯誤時被調(diào)用。

從URL中進行加載并將已經(jīng)加載的AudioBuffer傳遞給onLoad。

src/loaders/AudioLoader.js


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號