Установка положения источника и слушателя не имеет никакого эффекта - PullRequest
0 голосов
/ 26 апреля 2010

Первый раз, когда я работал с OpenAL, я не могу понять, почему установка положения источника не влияет на звук. Звуки в стерео формате, я убедился, что установил позицию слушателя, звук не реален для слушателя и OpenAL не выдает никакой ошибки.

Может кто-нибудь пролить свет?

Создать аудиоустройство

ALenum result;

mDevice = alcOpenDevice(NULL);
if((result = alGetError()) != AL_NO_ERROR)
{
    std::cerr << "Failed to create Device. " << GetALError(result) << std::endl;
    return;
}

mContext = alcCreateContext(mDevice, NULL);
if((result = alGetError()) != AL_NO_ERROR)
{
    std::cerr << "Failed to create Context. " << GetALError(result) << std::endl;
    return;
}
alcMakeContextCurrent(mContext);

SoundListener::SetListenerPosition(0.0f, 0.0f, 0.0f);
SoundListener::SetListenerOrientation(0.0f, 0.0f, -1.0f);

Две функции слушателя вызывают

alListener3f(AL_POSITION, x, y, z);
Real vec[6] = {x, y, z, 0.0f, 1.0f, 0.0f};
alListenerfv(AL_ORIENTATION, vec);

Я установил исходную позицию на 1,0,0, которая должна быть справа от слушателя, но это не имеет никакого эффекта

alSource3f(mSourceHandle, AL_POSITION, x, y, z);

Любое руководство будет высоко ценится

1 Ответ

2 голосов
/ 27 апреля 2010

Арррр, Стеро не локализован. Теперь все это имеет смысл, поскольку стеро-каналы уже рассчитаны, где моно не так, панорамирование рассчитывается openAL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...