Проект переименован в ProjectF. Полностью переписан. Функциональный интерфейс. Тестировал много раз. Не факт что все баги нашел.
Новые фичи.
1) Препятствия для звуков. Obstacles.
2) Фильтры.
3) Атмосфера. В прямом смысле. На затухание высоких частот влияет сухость или влажность воздуха.
4) Группы звуков.
5) Поддержка разных систем координат.
6) Отладочный рендеринг.
7) Полная лояльность к ошибкам использования. Просто код ошибки ( pfSystemGetLastError() ) и никаких вылетов.
8) Воспроизведение файла по частям.
9) Мелочи.
Демки нет. Будет время - сделаю. Справки нет. В заголовочнике названия функций сами по себе справка.
Пример
#include "ProjectF.h"
void main()
{
pfSystemCreateLogFile( "ProjectF.log" );
pfSystemEnableMessagesOutputToConsole();
pfSystemEnableMessagesOutputToLogFile();
pfSystemInit();
SoundData data = pfDataLoad( "music.ogg", true );
assert( pfSystemGetLastError() == PF_NO_ERROR );
Sound music = pfCreateSound( data, true );
assert( pfSystemGetLastError() == PF_NO_ERROR );
while( !bbKeyHit( KEY_ESCAPE ))
{
pfPlaySound( music, true );
}
pfSystemDestroy();
}