Re: questions on audiogame development

Ah, now I see why you want HRTF, just wanted to make sure you aren't unnecessarily shooting too far on your first attempt.
Though I wonder if the 3D audio in BGT did not use a low pass filter for stuff behind you.
Just adding that is probably enough to easily distinguish behind from in front in lieu of using actual HRTF.

Regarding sound libraries available for C++ or C#.
In general those libraries are created in C or C++ with C FFI.
Which means that in C# you have to make a wrapper around them, or find an existing one, usually other people have already wrapped them and provide their wrappers free and open source.
And C++ needs no wrapper so has one less layer of indirection

As an example I'm currently using OpenTK to wrap OpenALSoft and NLibsndfile to wrap Libsndfile.
They were both freely available with source code so I didn't need to write them.

I noticed that sometimes OpenTK would fail to initialize the sound devic e, so I found the snippet of OpenTK code that could fail and changed it to retry a few times if it failed.
Not sure why it failed, but retrying a few times consistently initializes it correctly.
This problem may also have existed in C++, I'm not sure.

NLibsndfile had wrapped 95% of the libsndfile methods.
Then I realized I needed to use the C callback functions to provide my own file parsing functions, so I had to add the wrappers to NLibsndfile because it was missing those.
And there was another minor bug in NLibsndfile where it thought 0 was a bad parameter to a function, but the Libsndfile documentation said 0 was valid and had meaning.
So I commented out the 2 lines that checked for a 0 and threw an exception.

So most sound libraries are available in both C++ and C#, but sometimes you need to tweak the C# wrappers a bit.
So I'd call this a slight pro for C++, but only slight.

The only other audio libraries I've used in C# are DirectSound and DirectShow through the Managed DirectX dlls.
Tactical Battle still uses DirectShow.

I know less about the screen reader libraries.
I expect most of them have C APIs, and know that Craig Brett made a C# wrapper for one of them.

Hope that helps.

_______________________________________________
Audiogames-reflector mailing list
Audiogames-reflector@sabahattin-gucukoglu.com
https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
  • ... AudioGames . net Forum — Developers room : Victorious via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : Victorious via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : Dentin via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : camlorn via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : Ian Reed via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : Victorious via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : camlorn via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : Ian Reed via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : Dentin via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : CAE_Jones via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : Victorious via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : Dentin via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : Victorious via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : camlorn via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : Victorious via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : camlorn via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : camlorn via Audiogames-reflector

Reply via email to