Friday, January 05, 2007

INFINITY: A SPACE-BASED MMOG

What an excellent way to publish my first post of this new year 2007 by talking about this amazing game that is being created: "Infinity". The guys behind this new production have posted great videos and images that really do a great job of showing off what the game is about.

Also, the "Journal of Ysaneya" is very interesting to follow -for us, developers- since it comments on the status of the game, the coding challenges they face to fix bugs, improve the gameplay, implement new features, etc.

Pay a visit to Infity's site, read the journal and don't forget to download the combat prototype and join the battle between the read & blue teams.

Cheers!

Friday, December 29, 2006

HAVE A HAPPY NEW YEAR 2007 ...

Well, the same as last week: I won't be publishing any new posts till next Thuesday so I just want to wish you all have a Happy New Year 2007 !!!

See you next 2007 ... ;)

PROBLEMS WITH FULLSCREEN MODE IN XNA?

Some members of the XNA community (including me) have experienced problems with XNA games when running on fullscreen mode -in particular, I have a GeForce 6600 GT card.

The problem: when a XNA game tries to get/set the presentation parameters for accepted fullscreen modes, it takes the list of rates accepted by the gfx card and in some cases uses the higher one -for instance, like 240 Hz on 800x600. Phewww! So you will see nothing more than a black screen and your monitor trying to warn you that something is attempting to set an invalid refresh rate.

The workaround: if the user forgot to (or cannot) forbid any rate above the maximum accepted vertical retrace on the gfx card, just catch the "PreparingDeviceSettings" event and then set a common rate like 60 or 72 Hz. How? In the class that derives from "Microsoft.Xna.Framework.Game" class, add the following line (say, within the constructor):

graphics.PreparingDeviceSettings += new EventHandler<PreparingDeviceSettingsEventArgs>(MyMethod); // "graphics" is a reference previously instanced as "GraphicsDeviceManager(this)" usually in the same constructor

Then add the following method in the same class:

private void MyMethod (object sender, PreparingDeviceSettingsEventArgs args)
{
args.GraphicsDeviceInformation.PresentationParameters.FullScreenRefreshRateInHz = 60; // for instance, or 70, 72, 75, etc.
}

I've modified the code of games like Rocket Commander and Wildboarders and it all works great!

Let's hope Sharky modifies Air Legends soon so that I can finally play the game.

Enjoy!