Sound orientation with HMD and Headphones
--HG-- branch : multipass-stereo
This commit is contained in:
parent
c11706feb8
commit
e4e1e3e5a1
2 changed files with 14 additions and 4 deletions
|
@ -1407,6 +1407,13 @@ bool mainLoop()
|
|||
NLMISC::CMatrix mat = ((camMatrix * hmdMatrix) * posMatrix);
|
||||
MainCam.setPos(mat.getPos());
|
||||
MainCam.setRotQuat(mat.getRot());
|
||||
|
||||
if (true) // TODO: ClientCfg.Headphone
|
||||
{
|
||||
// NOTE: non-(StereoHMD+Headphone) impl in user_entity.cpp
|
||||
SoundMngr->setListenerPos(mat.getPos()); // TODO: Move ears back ... :)
|
||||
SoundMngr->setListenerOrientation(mat.getJ(), mat.getK());
|
||||
}
|
||||
}
|
||||
if (StereoDisplay)
|
||||
{
|
||||
|
|
|
@ -2384,10 +2384,13 @@ void CUserEntity::updateSound(const TTime &time)
|
|||
if (SoundMngr == 0)
|
||||
return;
|
||||
|
||||
SoundMngr->setListenerPos(pos());
|
||||
const CMatrix &camMat = MainCam.getMatrix();
|
||||
SoundMngr->setListenerOrientation(camMat.getJ(), camMat.getK());
|
||||
|
||||
if (!(StereoHMD && true)) // TODO: ClientCfg.Headphone
|
||||
{
|
||||
// NOTE: StereoHMD+Headphone impl in main_loop.cpp
|
||||
SoundMngr->setListenerPos(pos());
|
||||
const CMatrix &camMat = MainCam.getMatrix();
|
||||
SoundMngr->setListenerOrientation(camMat.getJ(), camMat.getK());
|
||||
}
|
||||
|
||||
if (ClientCfg.Light)
|
||||
return;
|
||||
|
|
Loading…
Reference in a new issue