我有一个关于 OpenAL 的问题。我写了一个类来优化 OpenAL 的工作。我的意思是它为工作提供了方便的功能。StackOverflow,我的问题是关于声音的方向。
当我围绕听者旋转声源时,底部或顶部位置的声音消失,听不见。我认为在顶部和底部的声音应该更安静。我认为声音不是针对听众的。当我改变声源在空间中的位置时,我应该怎么做才能使声音始终指向听者?
改变位置al.alSource3f(source[0], AL.AL_POSITION, x, y, z);
我认为您最好使用随听众/相机移动的声音,如下所示:
alSourcei(alSourceID, AL_SOURCE_RELATIVE, AL_TRUE);
alSource3f(alSourceID, AL_POSITION, 0.0f, 0.0f, 0.0f);
如果 AL_DIRECTION 不等于零向量,则源是定向的。
因此,通过将方向设置为零向量,您的源将是全向的。
alSource3f(source[0], AL_DIRECTION, 0.0, 0.0, 0.0);