Archive for the ‘Programming’ Category

No Dream, Build, Play, but a new Job

Friday, March 2nd, 2007

It seems that all that effort and lost days that stopped me from entering the Dream, Build, Play warmup contest have actually paid off, since I got the job I was going for the interview for. I start work on the 12th of March, which means that between now and then I have to pack up everything in my little flat and prepare to move back down to England. Oh well, since part two hasn’t been announced yet, and since I don’t know if I’d be eligable to enter now (back working in the Games Industry again) it’s probably best if I concentrate on my impending move.

Dream, Build, Play contest

Monday, February 19th, 2007

Well I was planning on entering the warmup for the Dream Build Play Contest that Microsoft are currently running, however real-world events (job interviews) mean that I wont have time to build the game I planned, and I dont feel like coming up with a simpler idea now, I lost two days last week, and will lose 4 this week, that’s six days from a two week schedule, so no one will get to see Spacewars Adventure, oh well, we’ll see what happens when the main contest goes live.

XNA Cutscene Camera Library

Monday, February 5th, 2007

I’ve converted my Cutscene Camera from HDL into a small library with a simple API which is designed to allow anyone to create smooth camera moves with the minimum of effort, it even supports changing the field of view. The API makes it easy to incorporate the camera straight into your code by creating View, Projection or View/Projection matrices for you based on the the current time value, and if you need more control you can extract the current camera position, look at target and Field Of View directly and build your own matrices.

You can download the library which contains instructions on how to use it, plus a small demo application here.

XNABench – an XNA Benchmark program

Thursday, February 1st, 2007

After playing around getting a Poser model into XNA I decided that I really needed to do some performance testing to compare the PC to the Xbox 360, so I decided to build a little benchmark program, I’ve called this XNABench and it’s designed to test various areas of the PC and Xbox’s performance. The benchmarks will be devided into three seperate sections.

Visual Tests – These are done using a really complex scene exported from poser, which mimics the sort of scenes a normal developer would create, with lots of RenderState changes and even render target changes.

Synthetic Tests – These are designed to find out how the hardware reacts to differing batch sizes of polygons, using a sphere of various batch sizes (upto 49152 tris per batch)

CPU Tests – These test various aspects of processing speed, including Matrix operations and looping.

(more…)

HDL/Poser Mashup

Sunday, January 28th, 2007

Someone was writing on the XNA forums at Microsoft about trying to get a poser figure imported into XNA, well since I’ve got Poser 5 and V3 (Victoria 3) that I would try importing her into HDL as a test to see what happens when you try to use a really high polygon model in XNA. First though I had to get the data exported in FBX format, long story short, since this is the most useful part. Download Autodesk’s FBX Convertor, export the model as a Wavefront OBJ file, then convert it to an ASCII FBX file (this is important for the next step), next you need to edit the texture paths, I found it easiest to pull the textures out of their respective directories and store them in a directory local to the FBX file. I replaced the paths with the new path to the textures (since it made them relative to the FBX file, and not pointing at the original files).

Once I’d done that I loaded the model as normal in the game, first using the basic effect shader, because I wasn’t sure it would work, then once I’d got the model working I decided to ramp it up a bit, and render it into both the shadow map and the reflection, then just to make check I added an FPS counter to the title page. Here’s the resultant screenshot.

hdl_poser.png

I had to increase the scale since it appears that poser uses the same scale as my world does, so she’s 40 times actual size, you can see her reflected in the water, and her shadow behind the boat, you can also spot that she’s shadowing herself as well.

So there we go, rendering a poser model not once, but 3 times in XNA, and running at 62fps (possibly more since the update rate is fixed)

HDL gets an new title page

Monday, January 22nd, 2007

I decided that the old title page didn’t really reflect the game as I envision it, so I’ve changed it, and made it a bit more dynamic, instead of the helicopter sitting on a static helipad, I’ve move it out onto the Xena and created a scene that’s a bit more animated. It also tests my camera curve code that will be used in the cutscenes in the game engine.

Here’s what the new screen looks like:

hdl_newtitle.png

Of course a still picture doesn’t really do it justice, so I put together a little video of the new engine in action, I’ve also replaced the temporary music I was using with something a bit more martial.

Loading...

Reflections on HDL

Tuesday, January 16th, 2007

Another feature added to my engine, I was never entirely pleased with the water effect in HDL, yes, the ripples and warping of the texture looked alright, but it really needed to reflect the environment, however since I’d designed a top-down game, I hadn’t added a sky-box, so I had to create one first, now that I’ve done that, I’m able to render reflections.

(more…)

Software Page Updated

Monday, January 15th, 2007

I’ve updated my software page with some demos of games I’ve written or worked on in the past, visit the software page from the page menu on the right to see screenshots and information about each game.

Fixed Shadows

Wednesday, January 3rd, 2007

Okay, I’ve found out what was causing the shadows to break, when you begin a sprite batch it sets up the RenderState in a format that is suitable for rendering sprites, however this isn’t suitable for rendering 3D. (more…)

More Models and Stuff

Tuesday, December 19th, 2006

A quick update today, I’ve created a couple of new models for the game, first up is your support ship, The Xena (an alternative pronounciation of XNA), most missions will start from the back of this ship, currently it’s added as an object on the object map, however it’s not been designed to be used as such so it will vanish under certain circumstances because it overflows a tile. Here’s a view from the deck of the Xena

The Deck of the Xena

The next image shows two tank models, the tank is quite complex and probably has more polygons than are really neccessary, however I’m concidering doing this for all models so that if need be I can use them in cut-scenes using the game engine, if I didn’t model them with a reasonable level of detail then they wont hold up to closer inspection. Anyway here’s a shot with two tanks on it, I have to zoom right out to get both on screen, so they’re pretty small, but you can see that they both self shadow, much easier than on the helicopter, due to the speed of the rotor rotations.

Tanks for the memory

Well that’s it for today, I’ll be back later with more shots and progress reports.