Megosztás a következőn keresztül:


X3DAudio – áttekintés

Az X3DAudio egy API, amely XAudio2 használatával 3D térben helyezi el a hangot, hogy a kamera helyzetéhez képest egy térbeli pontból érkező hang illúzióját keltse. A 3D-s jeleneteket tartalmazó címek különösen az X3DAudio-t szeretnék használni. A térhatású elhelyezést nem igénylő hangok, például a hangsávok vagy a nem elhelyezett környezeti hangok teljesen megkerülhetik az X3DAudio-t.

Figyelők és kibocsátók

A hangok 3D térben való kezeléséhez az X3DAudio a figyelők és emitterekfogalmait használja. A figyelők és a hangsugárzók a 3D-s hangok meghallgatásának helyzetét képviselik, és azt a pontot, ahonnan ezek a hangok származnak.

  • A figyelő egy térbeli pont és egy tájolás kombinációjaként van meghatározva. Ez az a helyzet, ahol a hang hallható. A figyelő helyzete és tájolása általában megegyezik a kamera helyzetével és tájolásával. Ez igaz arra, hogy egy cím első vagy harmadik személy perspektíváját használja-e. A figyelő pozíciója világkoordinátákban van kifejezve. Fontos megjegyezni, hogy a hallgató pozíciója relatívan a emitterhez határozza meg, hogyan kell kiszámítani a végső hangszóró hangerőt.
  • Az emitter egy (vagy több) pontként van definiálva a térben, ahonnan egy hang származik. Az emitter pozíciója 3D térben bárhol lehet. A figyelőkhez hasonlóan az emitter pozíciója is világkoordinátákban van kifejezve. Az emitter pozíciója relatív a hallgatóhoz, amely meghatározza, hogyan számítják ki a végső hangszórók hangerejét.
  • Az X3DAudio balkezes koordinátákat használ. Ahhoz, hogy jobbkezes koordinátákkal használják, a fejlesztőknek az OrientTop, az OrientFront, a Position és a Velocity .z elemét kell negálniuk az X3DAUDIO_LISTENER és az X3DAUDIO_EMITTER esetében.

A pozíció mellett a figyelők és a kibocsátók is tartalmazhatnak sebességet. A 3D renderelő motortól eltérően az X3DAudio csak a sebességet használja a Doppler-effektusok kiszámításához (a pozíció kiszámítására nem használatos).

A figyelőkkel és a kibocsátókkal kapcsolatos további részletekért tekintse meg a X3DAUDIO_LISTENER és X3DAUDIO_EMITTER struktúrahivatkozási témaköröket.

Az X3DAudio és az XAudio2 használata

Az X3DAudio és az XAudio2 közötti összes interakcióhoz használja az alábbi X3DAudio függvényeket.

Az X3DAudio-nak az XAudio2-vel való használatának lépésről-lépésre történő példájáért lásd a Útmutató: Az X3DAudio integrálása az XAudio2-vel.

X3DAudio