我正在使用 JS 引擎噪声模拟器模块这里。
当我启动它时,控制台中的日志似乎一切正常,但是当我打开页面并按播放键时,没有声音传来。
这是我使用的一些代码:
...
import * as THREE from 'three';
import {SoundGeneratorAudioListener, SineWaveSoundGenerator, EngineSoundGenerator} from './sound_generator_worklet.js';
var loadingManager = new THREE.LoadingManager();
loadingManager.onLoad = function () {
moduleInit ();
};
listener = new SoundGeneratorAudioListener();
EngineSoundGenerator.load(loadingManager, listener);
soundCarEngine = new EngineSoundGenerator({listener: listener, parameters: {cylinders: 4,
intakeWaveguideLength: 100,
exhaustWaveguideLength: 100,
extractorWaveguideLength: 100,
intakeOpenReflectionFactor: 0.01,
intakeClosedReflectionFactor: 0.95,
exhaustOpenReflectionFactor: 0.01,
exhaustClosedReflectionFactor: 0.95,
ignitionTime: 0.016,
straightPipeWaveguideLength: 128,
straightPipeReflectionFactor: 0.01,
mufflerElementsLength: [10, 15, 20, 25],
action: 0.1,
outletWaveguideLength: 5,
outletReflectionFactor: 0.01}});
function rpmManager(j) {
return new Proxy(JSON.parse ('{"watch":' + j + '}'), {
set: function(target, property, value) {
soundCarEngine.worklet.parameters.get('rpm').value = value;
target[property] = value;
}
});
}
rpm = rpmManager(1)
这实际上只是 javascript 兄弟。