From f58af3cb9241bb2b6d521ee48acc0bb5d3fb7e46 Mon Sep 17 00:00:00 2001 From: Manuel Martin Date: Fri, 2 Jun 2023 14:34:32 +0200 Subject: [PATCH] Test --- src/bit-systems/audio-emitter-system.ts | 14 ++++++-------- src/bit-systems/audio-listener-system.ts | 21 +++++++++------------ 2 files changed, 15 insertions(+), 20 deletions(-) diff --git a/src/bit-systems/audio-emitter-system.ts b/src/bit-systems/audio-emitter-system.ts index a475055c1a..d37ebac640 100644 --- a/src/bit-systems/audio-emitter-system.ts +++ b/src/bit-systems/audio-emitter-system.ts @@ -66,14 +66,12 @@ export const updatePannerNode = (() => { obj.updateMatrices(); obj.matrixWorld.decompose(_position, _quaternion, _scale); _orientation.set(0, 0, -1).applyQuaternion(_quaternion); - const timeDelta = APP.world.time.delta / 1000; - const endTime = APP.audioCtx.currentTime + timeDelta; - audio.positionX.linearRampToValueAtTime(_position.x, endTime); - audio.positionY.linearRampToValueAtTime(_position.y, endTime); - audio.positionZ.linearRampToValueAtTime(_position.z, endTime); - audio.orientationX.linearRampToValueAtTime(_orientation.x, endTime); - audio.orientationY.linearRampToValueAtTime(_orientation.y, endTime); - audio.orientationZ.linearRampToValueAtTime(_orientation.z, endTime); + audio.positionX.setValueAtTime(_position.x, 0); + audio.positionY.setValueAtTime(_position.y, 0); + audio.positionZ.setValueAtTime(_position.z, 0); + audio.orientationX.setValueAtTime(_orientation.x, 0); + audio.orientationY.setValueAtTime(_orientation.y, 0); + audio.orientationZ.setValueAtTime(_orientation.z, 0); }; })(); diff --git a/src/bit-systems/audio-listener-system.ts b/src/bit-systems/audio-listener-system.ts index 6a7c6430f7..ae435efc8a 100644 --- a/src/bit-systems/audio-listener-system.ts +++ b/src/bit-systems/audio-listener-system.ts @@ -19,8 +19,6 @@ export function audioListenerSystem(world: HubsWorld) { const up = obj.up; - const timeDelta = world.time.delta / 1000; - obj.matrixWorld.decompose(_position, _quaternion, _scale); _orientation.set(0, 0, -1).applyQuaternion(_quaternion); @@ -31,16 +29,15 @@ export function audioListenerSystem(world: HubsWorld) { if (positionUpdated || orientationUpdated || lastUpUpdated) { if (listener.positionX) { // code path for Chrome (see #14393) - const endTime = APP.audioCtx.currentTime + timeDelta; - listener.positionX.linearRampToValueAtTime(_position.x, endTime); - listener.positionY.linearRampToValueAtTime(_position.y, endTime); - listener.positionZ.linearRampToValueAtTime(_position.z, endTime); - listener.forwardX.linearRampToValueAtTime(_orientation.x, endTime); - listener.forwardY.linearRampToValueAtTime(_orientation.y, endTime); - listener.forwardZ.linearRampToValueAtTime(_orientation.z, endTime); - listener.upX.linearRampToValueAtTime(up.x, endTime); - listener.upY.linearRampToValueAtTime(up.y, endTime); - listener.upZ.linearRampToValueAtTime(up.z, endTime); + listener.positionX.setValueAtTime(_position.x, 0); + listener.positionY.setValueAtTime(_position.y, 0); + listener.positionZ.setValueAtTime(_position.z, 0); + listener.forwardX.setValueAtTime(_orientation.x, 0); + listener.forwardY.setValueAtTime(_orientation.y, 0); + listener.forwardZ.setValueAtTime(_orientation.z, 0); + listener.upX.setValueAtTime(up.x, 0); + listener.upY.setValueAtTime(up.y, 0); + listener.upZ.setValueAtTime(up.z, 0); } else { // Although these methods are deprecated they are currently the only way to set the orientation and position in Firefox. listener.setPosition(_position.x, _position.y, _position.z);