useListener

useListener updates the spatial audio listener whenever its props change. Use it with panner on sound layers to create 3D audio scenes.

Usage

import { useListener } from "@web-kits/audio/react";

function Scene({ playerPosition }) {
  useListener({
    positionX: playerPosition.x,
    positionY: playerPosition.y,
    positionZ: playerPosition.z,
  });

  return <World />;
}

Signature

function useListener(listener: Listener): void;

Calls setListener internally whenever the listener object changes (shallow comparison). In a game loop, pass a memoized object to avoid unnecessary updates:

const listener = useMemo(
  () => ({ positionX: x, positionY: y, positionZ: z }),
  [x, y, z]
);

useListener(listener);