Jump to content
  • Advertisement
Sign in to follow this  
  • entries
  • comments
  • views


Sign in to follow this  



So I've been tinkering around, fixing various things and implementing others. (Entirely basecode stuff, nothing related to either Hiatus or any other project). I fixed the GL_TEXTURE_3D issue for low-end systems, kindof. Now it allocates with GL_TEXTURE_2D if the depth parameter of the atlas allocation call is 1, or if the 3D allocation call fails. Seems to work, but in a texture-demanding situation you might run out of space in the atlas with the 2D texture mode. Which is handled gracefully - a pure-black/alpha (I can't remember which) texture just gets substituted (essentially, my systems 'NULL' texture).

I'm about halfway through an FMOD implementation of the sound system, which is pretty basic -
class AudioAdapter {
typedef FSOUND_SAMPLE* SoundType;
typedef FMUSIC_MODULE* MusicType;

SoundType loadSound( const std::string& path );
void freeSound( SoundType sound );
bool playSound( SoundType sound );
void stopAllSound();

MusicType loadMusic( const std::string& path );
void freeMusic( MusicType music );
bool playMusic( MusicType music );
bool isPlaying( MusicType music );
void stopMusic( MusicType music );
void stopAllMusic();

I mean, that's basically all I want to do with the sound. Sure, there's the whole giant mess of cool things you can do (3D sounds, echos, effects, etc etc) but that's kind of overkill for my purposes, and I'd rather keep the entire system simple.

I'd have to say, FMOD is pretty nice. The documentation that I've found is limited to an API reference, but I've managed to get the stuff to work with only that. That's a sign of a well-designed library, if you ask me.

The problem comes, unfortunately, with the virtual file system. Loading a sample soundtrack (403's Southern Cross) takes 10ish seconds. I think I might be able to cut that in half (I have a feeling there's a redundant copy being made somewhere), but the issue is thus -

The file has to be *entirely* in memory. I can't stream it like a normal audio player would.

So its going to be slow, in any case. I guess I can deal with it, one idea I just had was to code in a splash screen which displays in the application window when it starts up, but before everything is loaded (as opposed to just a blank black window). We'll see, I guess I'm happy that the stuff worked so easily!
Sign in to follow this  


Recommended Comments

Oh, and if anyone wants to recommend a source for sfx/background music for Hiatus, I'm open for suggestions :3

Share this comment

Link to comment
I might be working on Linux. Except I'm quite possibly not.

That, and I can't stand win32 stuff. Just a passive hatred which must be adhered to ^_~

Share this comment

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!