我一直在使用Howler.js及其Spatial插件,但似乎无法正确定位声音。我的最终目标是在"中间"中设置一个静态监听器。屏幕朝前直视。
然后,我有8个声音需要围绕听众定位并播放,好像声音来自他们对听众的位置。
LEFT,RIGHT,DOWN,UP,UP_LEFT,DOWN_LEFT,UP_RIGHT,DOWN_RIGHT 左和右不是问题,工作得很好。但其余的不是......
// Listener position
Howler.pos(0,0,-0.5)
// Audio source positions
$("#play-left").click(function(){
soundsList[dirCodes.LEFT].clip.pos(-1)
soundsList[dirCodes.LEFT].clip.play()
})
$("#play-right").click(function(){
soundsList[dirCodes.RIGHT].clip.pos(1)
soundsList[dirCodes.RIGHT].clip.play()
})
$("#play-up").click(function(){
soundsList[dirCodes.UP].clip.pos(0, -1)
soundsList[dirCodes.UP].clip.play()
})
$("#play-down").click(function(){
soundsList[dirCodes.DOWN].clip.pos(0,1)
soundsList[dirCodes.DOWN].clip.play()
})
$("#play-top-left").click(function(){
soundsList[dirCodes.UP_LEFT].clip.pos(-1, -1, 5)
soundsList[dirCodes.UP_LEFT].clip.play()
})
$("#play-top-right").click(function(){
soundsList[dirCodes.UP_RIGHT].clip.pos(1, -1, 5)
soundsList[dirCodes.UP_RIGHT].clip.play()
})
$("#play-bottom-left").click(function(){
soundsList[dirCodes.DOWN_LEFT].clip.pos(1, -1, -5)
soundsList[dirCodes.DOWN_LEFT].clip.play()
})
$("#play-bottom-right").click(function(){
soundsList[dirCodes.DOWN_RIGHT].clip.pos(1, 1, -5)
soundsList[dirCodes.DOWN_RIGHT].clip.play()
})
我觉得自己很蠢,但似乎我错过了什么。似乎这些3D坐标是正确的......任何想法?
非常感谢!