🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

productive weekend

posted in A Keyboard and the Truth for project 96 Mill
Published November 07, 2005
Advertisement
So over the weekend I implented the new hands-free,no-fail graphics device mode system.

Basically works like such:

  • Any and all graphics modes are tested for compatibility
  • if the mode is found to be invalid, it selects the 'closest' mode (by using propery weighting (ty to VertexNormal)), and prompts the user
  • a different graphics mode can be chosen in-game by a list
  • it can also be manually changed by a user through the boot.conf

    This system accounts for the following:
  • don't pester the user with pre-game config box
  • what mode to run in 'out of the box'
  • provides a list of 'safe' modes
  • saftey for user-entered modes
  • protects against hardware change (gpu or monitor change)

    Seems like a good system, and is working fine, pretty easy to implement too once you gather all the cold-hard fact about what a device can 'really' support.

    So with that part of the graphics core done (initialization and management) I am going to move on to Input and Sound

    Ive used DirectSound before, so it should be a huge hassle, however my emphasis this time around is 'absolutely' iron-clad code, no bugs, well tested, etc. etc.

    So to achive that ususaly means lots of documentation digging and of course loads of testing (turning sound card off, different sound cards, etc. etc.), plus graceful feature degrading. The audio will be implemented much like in Flare3, in that it will be a totaly streaming audio system (no large static buffers), buffers will likely be 1 second in size (or optimal size if i can find that in the devcaps) and will be recycled (a store of buffers that can grow but not shrink, and can be reused (less memory alloc/free) Like before we will be using ogg, because it is simply a wonderful developer-friendly file format.

    Input:

    Input is another story, a lot of complaints in MW was inability to control motion with the Keyboard, also others would have liked to use a joystick. While I am not positive, I am going to try and set-up a system that allows for more flexiable control options. Depending on what I find it may only be (control mouse via joystick, which is probably not what people want) All in all DirectInput is new to me so I will need to learn what all is involved in it.
  • Next Entry Press Releases
    0 likes 1 comments

    Comments

    Seriema
    If you really want iron-clad code, there's no better way to do it than Unit Tests. Really. There isn't.
    November 15, 2005 01:18 PM
    You must log in to join the conversation.
    Don't have a GameDev.net account? Sign up!
    Profile
    Author
    Advertisement
    Advertisement