Hmm, I am still hearing this issue, here is a minimal example. Even if I put the sound 0.0001f to the right, it is only audible through the right speaker. Either something is wrong with my sound driver or this is intended?
#include <SFML\Graphics.hpp>
#include <SFML\Audio.hpp>
int main()
{
sf::RenderWindow window(sf::VideoMode(640, 480), "SFML Window");
sf::SoundBuffer buffer;
buffer.loadFromFile("bullet.wav");
sf::Sound sound;
sound.setBuffer(buffer);
while(true)
{
sf::Event e;
while (window.pollEvent(e))
{
if (e.type == sf::Event::KeyPressed)
{
switch (e.key.code)
{
case sf::Keyboard::Left:
sound.setPosition(-1.0f, 0, 0);
break;
case sf::Keyboard::Right:
sound.setPosition(1.0f, 0, 0);
break;
case sf::Keyboard::Space:
sound.setPosition(0, 0, 0);
break;
case sf::Keyboard::Escape:
return 0;
}
sound.play();
}
}
}
return 0;
}
Also, unrelated, I hear something that may be a bug. Using the above program it seems that setPosition doesn't immediately take effect. That is, if I press left to position it on the left, then press right, I do hear a little blip out of the left speaker. Pressing right further times won't produce anything from the left speaker.