by mh » Mon Jun 14, 2010 2:53 pm
The MP3 patent only covers distribution of codecs; writing playback software that just uses those codecs through a 3rd party framework should be mostly cool.
The DirectShow/Windows code I wrote is fully legal, and will also handle playback of any file format that you have a DirectShow codec installed for. I've tested it with MIDI, WMA, WAV, etc and it works seamlessly, so it's not restricted to MP3. It can even stream audio over the internet with a few minor modifications.
One point that's been on my mind lately. I remain unconvinced that HL BSP is a viable alternative. The only real advantages it has are that it's relatively easy to include in an engine, and that it's relatively easy to map for. But that needs to be weighed against the fact that it basically offers nothing (aside from an extra clipping hull) that hasn't already been accomplished by engine mods. You may as well just use Q1 BSP with a LIT file, some skybox textures and some external textures, to be honest.
I would vote for Q2 BSP as a better alternative. It's open source so there are no dodgy legalities, we have a working implementation (in the form of the Q2 engine) and oodles of sample maps. It has better visibility, higher limits, and basically fixes everything that was wrong or annoying about Q1 BSP without making changes to the format that are too radical to integrate.
Aside from that, one way I can see to support multiple skyboxes, and skyrooms, is by using BSP model entities. Just draw the world without any sky surfaces and draw the entitiy with them. Any reason why that wouldn't work?