Monday, May 21, 2007


... as the song goes ... well, actually, not tomorrow but this Friday 25th.

Yeap! After many years of being the last man standing, the ultraplayer, the ultrabachelor, ... or at least in my dreams ... my fiancee Andrea and I have decided to say "yes, I do". The big step ...

Thus, as you may suppose I -in fact we both- have been (and still are) dealing with all the details of the wedding day, party, honey moon these days -plus a "extreme make over" of my near future home- so that's why I may have seemed a bit "distant" to the self-proclaimed task of reporting XNA-related news. Sorry about that, but you know, I've been really busy ... real life ... responsibilities ...

So what does this mean for my blog? Only that I'll be out for the next 4 or 5 weeks, so in the meantime, until I come back, don't worry 'cause you can count on Mykres and Ziggy.

Thanks guys for supporting this site and see you all when I get back. I need some vacation ...

BTW, I cannot go without giving some breaking news: we're all aware of the already released (Benny's) and 3 upcoming books on XNA (check Ziggy's site), but there are two new books to add to that latter list:

Ok, guys, see ya.

Pete's out!

Friday, May 18, 2007


There has been many questions in the XNA Creators Club's forums regarding unit tests with the express editions and particularly with XNA GSE. Well, not only unit testing can be executed with the latter but also, TestDriven.NET can be also used again since version 2.5 (still in beta stages). However, from time to time we may found some exceptions with tests related to the content pipeline. Henning Degn explains us why and also brings a simple workaround to that issue.

From Degn's article: "... Some tests in XNA cannot be done dynamically. These tests usually require visual inspection and therefore need to be run manually. Using you can run test scenarios, simply using an ad hoc test of a function containing the test. Simple. Effective. No need to modify the main method to run these functions.

However, when using any XNA content I have stumbled on the following error:

File not found. ---> System.IO.DirectoryNotFoundException:
Could not find a part of the path 'C:\WINDOWS\assembly\GAC_32\Microsoft.Xna.Framework\\Content\myTexture.xnb'

The reason being that (naturally) I didn’t put my content inside the GAC (Global Assembly Cache)! The ContentManager is using the codebase of the assembly who’s main method called it as its root ...".

BTW, in some chapter of Benny's book it's stated that this tool cannot be used with XNA GSE. Please notice that by the time the book was written, v2.5 beta -the build that reimplmented support for express editions- hadn't been released.



Shawn Hargreaves has published the third part of the series that cover "transitions", this time centering attention on the use of stencil buffers to produce some nice effects.

From the post: "... Stencil is usually an 8 bit integer value, and is attached to each pixel in addition to the usual color and depth values. You can set renderstates to control how values are written into the stencil buffer while drawing graphics, and also to specify that graphics should only be drawn in areas where the existing stencil values meet specified conditions ...".

Consice, accurate and practical. The best part on the series so far, imho of course ... cheers!

Thursday, May 17, 2007


Created by X has published a new component for XNA , "xMessage", designed for displaying in-game chararacter dialogs.

From the post: "... the component allows an image to be displayed with the text, and the text is also dynamically changes acording to the size of the dialog. When running the demo use the left mouse button to move the dialog and the right mouse button to resize the dialog ...".

See ya!

Wednesday, May 16, 2007


Zygote has interviewd the guys behind the game "Tower Defense".

From the interview: "... There are four of us currently under the Focused Games umbrella. Justin O'Dell (Anxiety), has been taking care of a lot of the core gameplay functionality such as how the map works and how state, player and enemy management works. Matthew Randall (EviLDeD) wrote the entire audio core for the game, and also did quite a bit of work with Towers and Enemies to get them to track, shoot, move et cetera. Mart Slot is the one responsible for all the fancy particle effects in the game, which will be more prominent in the future. I, John Sedlak (Krisc), have been responsible for the user interface and a lot of the front end work like how the user interacts with the map, how they change levels, and build towers ...".



Rhysyngsun has submitted to Ziggyware the article: "Introduction to Matrices in XNA".

From the article: "... Understanding matrices is a fundamental part of creating effective games in XNA. Matrices particularly flex their muscle when you're working in full 3D space, however, the math behind them can be daunting. Fortunately, XNA provides most of the functionality for matrices that you will ever need without having to worry about the complicated math behind that functionality. However, it is necessary to have an understanding of what this functionality is actually doing in order to apply it correctly in your code ...".

Watch this space!


Scot Boyd, author of the upcoming book "Expert One on One: XNA Game Programming for Xbox 360 and Windows", has provided the source code of the "QuaternionCamera" class which will help you avoid that nasty Gimbal Lock problem that you may face when working with yaw, pitch and roll at a time.

From the post: "... XNA unfortunately does not provide a QuaternionCamera class in it's Framework. Nowhere on the Internet could I find a camera class that provides six degrees of freedom without requiring additional coding from the reader ... In the process of attacking this problem in my book, I've made a few camera classes. I'm posting the simplest class here - good for beginners. The final camera class in the book will be more complicated. This class should provide a good jumping-off point for anybody interested, or a simple helper class for those who just want a camera without hassles. In the camera, GetViewMatrix and CreateYawPitchRoll are where the money is ...".

Read on!


There's a new blogger in the XNA community, which will post details, information and screenshots of the shooter projectKrysalis.

Here you will find some description of the game and here the software being used for its development.

Also, there's a couple of screenshots of the custom tools created for building up the game.



Head to Kar0nEs blog if you want to know the "5 Things we can learn as developers from videogames".

From the article: "... Yesterday, while travelling to work, I thought about what things PC videogames (almost) always do today that should be applied to general development ...".

Stay tuned!


... is what you'll see in the video available below, which shows off some GUI features of the upcoming Thrust engine.

From the post: "... Below is a short video clip of me testing out GUI Pathing in Thrust ... I can't wait to see what people come up when using this. In the demo, I am simply tabbing between the controls. It will work much the same with the XBOX 360 GamePad, allowing a user to "tab" to the next menu option, et cetera ...".



Shane Lynch has released the first version of XNB-Viewer, a handy application that lets you preview an XNB model with a double-click of your mouse.

From the post: "... You can either drag and drop your XNB model files onto the exe or associate your XNB files with this EXE. Later version of this viewer will support for textures, shaders and other content types ...".


Tuesday, May 15, 2007


This is interesting news: the governor of Santa Catarina (Brasil) announced "... the installation of a plant of the Nintendo, that will produce games electronic aiming at to an ambitious program of exportation ...".

Here is the original news post and here is the translated one.

I hope someday we read something similar for the XBOX productline regarding SouthAmerica.


Want to listen to what Dave has to say? Then listen to this podcast.

From the podcast: "... um ..."



Wizzie has released a component for handling resources, and thus the name: "ResourceManagement Component".

From the post: "... This is a very useful component since it allows for managing all of your resources in one object that is available anywhere in your engine via XNA Game Services. The code was written with the 360 in mind so there are work arounds in place for the .NET Compact Framework ...".



Yes, the latest release of Blade3D beta1 (build 1817) is now available for donwload.

Hereunder is the list of changes:

  • New SimpleTerrain Height and Raycast Operators,
  • New audio system, with import, and preview,
  • New TriggerVolume, GraphTrigger, SoundTrigger and AnimationTrigger,
  • Opacity property now working on many MaterialsPlay Sound Operator,
  • Ability to modify bitmap fonts from gallery,
  • New Bounding Box ActionsBuilt-in support for Idle Animations,
  • Random sound containers,
  • New water normal texture,
  • RenderColorTarget Semantic Now Evaluated Per-Pass,
  • New Scene Level Bools For Enable/Disable Display Bounds, and
  • Fixed some floor plane draw issues.

Happy coding!


... or as Nuclex has posted: "XNA Windows.Forms UserControl".

The preview: "... as can be seen in one of my recent news posts, I did just that while developing a world editor for my upcoming game Island War. Because of the great demand for such a component, I decided to release my XNA GameControl class to the public ...".

The screenshot:

And the link to it.

Handy, very handy ...


Diagrams showing the layout of the engine are now available:

Plus a new video:

Also, as usual, a preview of the post: "... Animated sprites have been a fun feature to add, my implementation hangs around the concept of an animation sheet. my orc test sprite has some animations in separate.png files and some bunched together on the same .png. So how do i handle them? every animation gets a animation sheet, which contains its start frame, end frame and a reference to its texture. these are held in a dictionary as a value, the key to that dictionary is a CompassDirection (north, NorthEast ect). I have a load of these in a list, and i keep there indexes in another dictionary with a AnimationState(move, idle, jump etc). To get the correct animation sheet you just need to know what direction and animation you currently in and pull em out ...".

Ultrahead's out.


Shawn has published the second installment on his series of articles regarding "trabsitions", this time focusing on the physics part.

From the post: "... you may not know exactly when you want things to start or stop moving. When the factors controlling your transitions get more complicated, it can be easier to switch to a physics based approach ...".

Read on!


Created by X has published a content processor for XNA that allows you to read content files as streams.

From the post: "... The StreamContentProcessor allows you to use simple stream based importer and/or processors, so you can read your content files as a stream using content.Load("AssetName") ...".

Downloading it now ...


Remember this post? Brecht is back with more tutos:

Read on!


Yes, my desktop went no-no last weekend, ... again. Since I have no yet found a restoring system that works well on a WinXP Pro x64 OS -I mean a complete one, not the application that comes packed with the OS, I'm manually reinstalling almost everything, or at least the things that I need most.

Well, other than that, sorry for being late with the news post.

One good note: along with other books, I've receive Benny's. So I will start reading it as soon as I can and maybe post a full review (why not?).


Sunday, May 13, 2007


After conquering "deferred shading", Jason Maskell is crying loud for help ... Ok, maybe I'm exagerating ... :)

As Jason approaches the phase of implementing a physics handler, he encounters a design crossroad. So he would like to hear what others with experience in the field have to add so as to help him decide what to do.

From the post: "... I’ve got to come up with some elegant system to retain my 2d movement vector on the flat grid, but also have an equivalent 3d worldspace vector at the same time. It’s an interesting problem but I think I’ve got it. It’s starting to feel grossly complicated though ...".

Have ideas? Post them here.


Josh, from "Grass Root Games", has posted a nice screenshot of the GUI we will find inside the 2D shoot'em up game "Last Alarm".

From the post: "... You’d think it only takes a couple of hours to lay your interface out in photoshop so it should only take a couple of hours to code…but you’d be wrong, dead wrong ...".

Does anybody know whether this game is being created with XNA GSE? The GUI looks really good ...

[Aha! It is, according to this post TorqueX has been used.]


McCoder has released the source code of the linear collision tests referred on my previous post.

From the post: "... There’s a ton of hack lying around in the code for my collision test app, but I figured my collision response code was probably clean enough to be useful to someone so I figured I’d post it up for everyone to check it ...".

Happy coding!

Saturday, May 12, 2007


McCoder shows a video with the latest results obtained on a XNA-based linear-collisions system:

From the post: "... I worked out some better collision response code and finally got some accurate and stable results. My primary goal was to get momentum transfer working correctly based on the object’s mass ...".


Friday, May 11, 2007


Jason Maskell comments about his experiences with deferred shading techniques.

From Jason's post: "... I’ve thought that I’ll probably have to write a material editor sort of thing where my artist can play around with the materials settings until he finds out the right settings to stick in the lookup texture. For instance, he will be putting an index value in the alpha of the texture, which will then lookup into another texture to get 4 values instead of one ...".

Do I see some soft lighting in that screenshot?


This has nothing to do with XNA, game programming, comic books, nor animation, so its miscellaneous stuff. However, I believe is an interesting read for those who plan to invest their money on capital markets, in particular, in penny stocks. has published an article called "The Truth Behind Penny Stock Spam". What's relevant about the article? That it shows the awful truth behind easy money.

In short, I guess you already knew it but if you want to invest money in capital markets, don't let yourself being attracted by spammers, or companies which you barely know or don't know at all.

Always try to analyze the fundamentals of the prospect companies by yourself (in case the proper info is available), read serious analysts' assessments, study the track record of the company, what it offers, if its a known company or not, who are its directors/owners, where it is located, since when, and so on. Otherwise, you face the risk of losing your money in the split of a second!

I'm not saying that you must play always safe, because as you may know the greater the risk the greater the potential reward ... or losses ... but if you want/need to get some "quick" profit just play smartly and the safest as possible, as I assume you do with any other type of investment, in order to avoid the risk of hugh losses because you actually invested in a "ghost" company.

Take the company mentioned in Kiplinger's article, for instance, if you analyze the quote charts, you'll see that it opened in more than USD 7.oo/share when it was first traded in the penny market and then it just followed a slow downward and almost steady path to the current value of USD 0.04 a share. And yes, you're reading right. From riches to rigs ...



Ok guys. What I'm going to blog about right now is a very interesting way of using the XNA API for other serious purposes than what it was meant for: videogames -which in turn also shows off the potential of the API, when you use it in a smart way.

Adrew Griffiths and a friend of him were asked to write the software for an interactive VJ editing system for the Ford stand at the Geneva motorshow. And guess what? Yes, you're right! They decided to use XNA for the implementation.

Not a believer, ugh? Then just watch the following video and be prepared to get spellbound:

What did I tell you? So now you're interested ... well, you can find more info about the project here.



Here's an interesting video showing off some flocking behavior of a group of boids, all done with XNA!

You can get to the author's site by following this link.


Brecht Kets has published a series of articles about primitives with XNA.

From the articles: "... A triangle is defined by 3 points, which is defined by a Vector3, containing the X, Y and Z coordinate (3D space), and maybe some additional information, such as color. Such a point is called a vertex. XNA has some vertex structures embedded, and one of them is perfect for this example: VertexPositionColor. So let us add this to our class ...".

You can find part I and part II on his blog.

Thursday, May 10, 2007


Dan Maltes comments on Realmware's Visual3D.Net framework.

From the post: "... is a combination Game/Simulation engine and Game/Simulation building tool-set all built into one. This means it has much of what you need built right into it, saving you a tremendous amount of time and letting you, and your team, focus on the imaginative and creative part of your application. For instance, assigning keys and mouse clicks to control objects in your 3D world; normally you would have to write a whole bunch of code and event handling on your own to accomplish this. Visual3D has that built-in, so all you have to do is decide what keystroke or mouse-click does what. That is just the tip of the iceberg of what Visual3D has built into it ...".

Stay tuned.


Kobingo has released a demo version of his game "Bullet Hell Tactics" for public testing.

From the announcement: "... This will be the one and only public testversion before the final demo is released. Before downloading, please read the requirements. If you are having problems running the game read the troubleshooting instructions. Please also read about how to play the game ...".

You can donwload the files here.


Kyle strikes again on quadtrees, this time focusing on code design.

From kyle's article: "... Before I explain the classes, a picture of how the node tree is constructed in a Quadtree as objects are added and move through the tree (individual frames on click-through) ...".

Read on!


NekoCake's engine has been updated and a demo is included.

From the post: "... for anyone who is interested, heres a short demo. It only works with an xbox controler at the moment. left stick moves you around, B jumps and A kills you. If anyone can run it and tell me how it runs on there pc id be gratefull! ...".

So, let's tell this guy how it runs ...


Sharky comments on the new features that we'll be getting with the next release of his game "Air Legends".

From Lawrence's post: "... I’ve added a much requested Special Manoevre (aka. evade) feature! I’m stoked about this. It really makes the gameplay a lot more dynamic. Essentially, using the Special Manoever button you can trigger the plane to pull the manoevre. Currently there are two manoevres ...".

Cannot wait!

Wednesday, May 09, 2007


Mike comments on the experiences he is facing along the process of building a UI for his XNA-based world editor: "Blueprint".

From Mike's post: "... As XNA runs using a DirectX graphics device its very picky about loosing its rendering state. So if a user undocks the window and moves it about and then redocks it, it doesnt like it due to the loss of rendering state. For now the XNA window has been fixed so that it cant be undocked ...".



Hi everyone. I had earlier promissed a sort of "in-depth" review on the third spidey's movie, so here it goes:

1. What happened with the so-well-known "spider-sense"?

As I said in my previous post, Venom has the ability to be around Spiderman without being detected because the black suit managed to learn how to surpass spidey's senses when Peter was the host. But that was after Peter was the host.

Let's start with the meteor crash. Pete and MJ were just looking the stars and when the meteor crashed closed to them, the spider-sense was what? Temporally out-of-order? Then the black matter approaches and yet again, still out-of-order?

Another one, when Harry Osborn strikes on Peter -when the latter was driving his motorcycle, just nothing, nope, zero ... Spider-sense was on vacation ... All through the movie the spider-sense was missing -of course, this is ok when fighting Venom, I repeat.

2. From light to dark.

The movies have been clearly follow a path to the dark side: the first one was ok, Spiderman was fun, say jokes during battle, usual stuff. The Second one was a bit darker, but still ok. The third one was the darkest, what in fact was already expected due to the presence of the black matter/custom, so maybe one may have thought it would be very easy to switch from one state of mood to the next one and transmit those states, changes and sentiments to the viewers.

Well, imvho, the scenes/script fails to transmit the mood, and make the audience go "wow", "ahh", "snif!", "yeah" -what in the previous 2 movies was more or less accomplished; in fact when the movie finished, nobody clapped -everyone left the room mumbling, and believe me when I say that the theater was really crowded, on a Tuesday's evening!

3. Still great villans?

One may argue whether -in the first two movies- Peter, MJ, Harry, Flash and others -even spidey- were all well presented to the viewers or not. But one great aspect of those movies were the villains: the Green Gobbling and Doctor Octopus, both excellent performed.

Now, let's face it, the sandman was never a great archenemy of Spiderman, in the sense that it wasn't the most clever one, nor a "real" bad @$$, but to be fair, the actor played the role nicely.

However, the origin of the sand man and the story around him and Pete's uncle was a mess. If you want step on to the middle of an atomic experiment, just climb a small unguarded fence, go to an unprotected container, and jump/drop. Wasn't contamination an issue? Not to these guys, since there was no roof on the silicon/sand container. It was funny then to hear one of the scientist say something like: "there was a change in the mass of the sand" when the sandman dropped in there. What about rain, particles in the open air, and such. Unbelievable!

Now, enters Venom. That should have been the real nightmare to both, Spiderman and Peter Parker, not Harry, but then again Venom played just a sort of minor villain role who also dropped dead(?). C'mon!

4. Every foe knows who is behind the mask of Spiderman.

Why don't you just publish in the Daily Bugle: "Peter Parker is Spiderman!", "Spiderman unmasked", or "Want to know who is Spiderman? Call 1-800-GOTCHA". It also happened in the second movie: a lot of people "happened" to see his whole face w/o the mask. Please, just stop doing that.

5. Almost everyone dies.

Every foe, or semi-foe, just dies. Perhaps this is a consequence of (4) above. But not the sandman!

"I forgive you", those were the words of Peter Parker after the final battle and the light explanation of the sandman. Only that foe and the spectators knew the existence of the sick daughter, who barely appeared in the film. And Spiderman w/o knowing any of this, stole Daredevil's lines.

Yes! Those were the words from DD to Wilson Fisk when the former finally decided to put and end to Kinping's reign. Something quite different to what was seen on DD's movie.

6. Harry and his butler.

I didn't knew that Alfred was on the movie. Honestly! "Sir, I loved your father ..." When? Where you in the first movie? "... And the wound/blade bla bla bla ....", that was enough to make "two-face" hurry to become a good guy again ... [face of lost guy] ... Errr ... O - k? [/face of lost guy]

7. Scenes Edition Hiccups.

This may be consider as a minor issue in comparison with the story, but in some places, transitions between scenes were a bit "jumpy" as if they were suddenly cutted, even you notice it because the sound was also drown.

And nope, it wasn't a problem with the theater projector. The movie lasted what it should ... so maybe the editor should have read Shawn's blogposts about the importance of transitions ...

8. What's with Peter Parker's character?

This is the one I must mostly complain about. Just read on to know why ... Peter was a bit shy, but never "that" naive.

In fact when he became Spiderman a big change happened. He also become a sort of player ... Gwen, MJ, Felicia Hardy, ...

But the interesting part is that no matter what he was always a common dude with common problems, a bit of financial/professional sort of bad luck, women, guys who didn't like him, JJ, Doctor Connors, classes, and such.

There was the drama, indeed, but he always was a funny guy, specially when using spidey's custome, who always tries to fool the bad guys with jokes and funny comments and things like that, also as a way to release some preassure during the battle.

Now read this: as I said the theater was crowded, a couple of rows behind my fiancee and I there was a couple and she suddenly said and I quote: "this guy is a stupid!". That's not the image in the comic books nor the one that should be projected.

And what was that "red kriptonite" behavior with scenes where Pete behave à la "SATURDAY NIGHT FEVER"? And then that "unspicy" dance with Gwen in front of MJ. Who are you? "The Mask"?

They writters/director want to make PP life funny so hard that they are making him look riddiculous or pittyful -when he slaps MJ in the face. Want to introduce fun? Just make spiderman mock the villains during the batlles ...

And I won't argue here why Gwen Stacey appeared in this movie -when she should have appeared in the first one- nor the story with MJ. But as a whole, the script was about to cross the edge to the fields of cheap soap opera plots. And to be fair, this was stressed when MJ abbandoned JJ's son during the wedding -on the second movie.

In conclusion:

If you are a comics fan who read and collects lots of regulars, graphic novels, and such -meaning you know a lot of superheroes stories, and you haven't yet watched the movie, my advice is: just forget everything you know in order to enjoy the movie. Otherwise, you'll keep saying "what ... ?!" in many scenes. Believe me ...

Given the technical advances in the Industry, specially on the gfx side, what makes a difference between a regular, good, great and excellent movie, is not the amount of gfx you include -of course, the more improved in quality and realistic, the better- but the script, as always ... the same for (almost any kind of) videogames.


[Jfyi, in case you didn't know it, JJ's son was for a certain period a werewolf due to a rock he picked as a souvenir during one of his trips to the moon, but that's another story ...]


I've just got back from watching Spiderman 3 movie, and I must say that as an old comic fan I am rather dissapointed with this sequel. It's not that I didn't like it at all, but in order to enjoy it I just watched it as if I had never read any Spider-Man comic book in my life.

I must admit that I'm a bit upset right now, so I need to take off my "black suit", rest a little, clear my thoughts and then I promise you I'll publish a my review of the movie.


[Btw, I know the black suit "disables" Peter's spider-sense, so tomorrow I'll explain the reason behind the title of this post ...]

Tuesday, May 08, 2007


In modern game development you'll most likely need to take advantage of your gfx card by using shader effects and in turn moving away from fixed-function pipeline techniques.

Thus, the need for hiring shader artists and or become one yourself -so as to create custom-made effects for your particular game or engine- just grows.

So, what to do? You can either do a google search -say, looking for free fx resources- buy some books that come packed with shader content -like the "ShaderX" series, hire a shader artist, and or build your own shaders by yourself from scratch or by modifying a pre-existing template (like the ones that come packed with the nVidia SDK 9.x/10).

Well, there's a new additional solution: "Shaders for Games" ... a site that should have been called "Shaders For Sale", instead ... check it out since these guys offer interesting HLSL shader packs at affordable prices.

The SM3 water fx screenshot looks great ...


Codenamed "Vasculities", there's a new update of NekoCake's engine: "Crimson".

From the post: "... So far, ive completely rebuilt the screen system. Ive looked through Microsoft’s game state management sample and i loved the way they implemented some things (especially the transitions!). After playing with it a bit, it was clear id have to do a bit of retooling on my screen system, which ended up with me ripping out the whole screen system and starting from scratch ...".

Stay tuned!


John comments on the new input core of his engine: "Thrust".

From the post: "... Thrust, unlike Xna5D, has recieved its own project folder for 360 compatible work and I am happy to report that the new input core is running on both Windows and the 360. So how does this new Input services work? I have decided to go much the same route as the new GUIManager by templating the main class, Ebi. When you create a new Ebi (Event Based Input) object, you pass along the type of an object that inherits from ControllerBase. This allows the Ebi object to instance your controller's code and use it ...".


Monday, May 07, 2007


Head over "Mykres Space" to read the following handy article: "XNA Storage - The Beginning".

From the article: "... With some of the projects that I am working I am going to have to be able to store player and game data, so with this in mind I thought that it was time I had a look at the storage systems that are included in the XNA Framework. The first stage in this project was to make sure that I had had a good read of the Documentation files for the Storage System that Shipped with the XNA Framework ...".

Read on!


John sedlak has published a beta of the first game that "The Gib Factory" has ever created: "Tower Defense".

From John's post: "... It is 05/06/07, and today is the day we, "The Gib Factory", are releasing a Beta to our first game, Tower Defense. A lot of progress was made over the past week and even in the last couple of hours. Sounds have made their way into the game as well as particle effects for towers and the GUI is becoming more and more complete everyday. We are looking forward to hearing back from everyone about this version, what works and what doesn't as well as any bugs you may find ...".

Downloading it right now ...


Ziggy has published a couple of handy source codes:
  1. "Converting Vertex Buffer Formats in XNA", and
  2. "Calculating Tangents and Binormals/Bitangents in XNA".

Watch this space!


Kyle Shouviller has written a nice article on quadtrees with also comes with source code included.

From Kyle's article: "... Imagine a game like Pong, except with a rotating triangular ball. This ball needs to have perfect collision detection with the paddles, which means if any part of the triangle intersects with the paddle, there is a collision. You can’t just do simple radial collision detection, nor can you do rectangle collision detection, because the triangle might not actually be colliding for some collisions detected in those cases. However, performing the triangle-to-paddle collision detection can be expensive to do every frame (I know, not that expensive – but imagine 200 balls with 30 players around a big field with balls also colliding with each other, or something like that). So what are you to do? ...".

Read on!


Almost every comic fan in the world is paying attention to the spiderman 3 movie -now in theaters- because of the appearance of one of the fiercest foes ever: Venom.

However, and despite the fact that I haven't gone the cinema yet to watch the above-mentioned movie, I'm particularly more excited with the Fantastic Four's sequel. Why? First, if the Silver Surfer is in it, it should also imply that "Gah Lak Tus" is. And second, because of this new trailer.

I'm not going to argue why I prefer more FF over SP series of movies, at least for now, but in short, I'm not happy with the way Peter Parker's life is being presented/plotted. Maybe in a later post I could explain the reasons behind my sentiment, but for now, I'd only say the the part of the script that deals with PP should be improved.

Anyway, the new FF trailer rocks!

[Btw, an ironman movie is coming ...]


Ziggy has posted a message from Chris Webb -Executive Editor at Wrox- who announces that the source code of the book "Professional XNA Game Programming" has been recently updated.

From the message: "... Yesterday I received updated code from Ben for Professional XNA Game Programming, and it is now live on the book’s page at This new code replaces all of the code previously available on the book’s download site, so all readers should update as soon as possible.

The update includes bug fixes, all samples now compile on both XNA Versions and on Windows (XP and Vista) and Xbox 360. In addition, Ben also included new support for some older ATI video cards because he’s cool like that ...".

What are you waiting for? Just go and download the updated files!

Friday, May 04, 2007


If you need a job, are looking for it, and think you qualify, then read this post, since GarageGames is likely looking for you.

From the post: "... What We're Looking For:We are looking for experienced Engineers, Web Developers, Marketers, and QA Specialists ...".

Hurry up!


This is an off-topic post about a rumor that has suddenly appeared: Is Microsoft pursuing a deal to buy Yahoo?

Maybe we can find the answer to this question in this video.

Intresting ...


Microsoft has announced the opening of a European base of operations for Microsoft Game Studios.

From the OXM's article: "... MGS Europe will be headed up by Phil Spencer, general manager, Microsoft Game Studios, who will report to Shane Kim, Microsoft Game Studios' corporate vice president ..."



Benny has announced that his new site "XnaProjects.Net" is up and running. But, what is it? A new XNA Community site where you can submit your games and links.

From the announcement: "... Yesterday I wanted to put all the samples from the book on my blog, but it is already way to overloaded here with screenshots and games, adding another 10 games will not make anything better. Instead I had a crazy idea to create a XNA Community site in one day. It is called XnaProjects.Net. The idea is for everyone to submit their games and links. News are grabbed with Google Blog Search and more features will come in July 2007 when I got more than 5 minutes time in a row ...".



This month issue of PCGZine is now available for free download. As always, you have read it right, free download.

The issue includes an exclusive interview to Robin Burrowes -Microsoft's Xbox Live product manager for the UK and Ireland, plus previews of "Mass Effect" and "Shadowrun", a review of "Command and Conquer 3: Tiberium Wars", and more, much more.

So, what are you waiting for?! Download it now!


As promised, Shawn is starting to blog on transitions with "... The Importance of Curves".

From the post: "... Whenever you are dealing with transitions that take some fixed amount of time to complete, it can be useful to normalize their position along this timeline into a control value in the range 0 to 1. This makes the transition state easier to manipulate ... More importantly, you can apply curves to make the animation speed up or slow down in interesting ways. Normalized control values are useful for this because it is easy to apply curves that will affect their shape without changing the overall range of the motion ...".

Read on!

Thursday, May 03, 2007


A group of students created this funny stop-motion video with over 3000 photos:



There's a new article on Cornflower Blue's blog that demonstrates how to extend the content manager so as to handle the setup of models being imported.

From Eli's post: "... I don't know about everyone else, but usually the first thing I do after loading models is loop over their effects and set up their lighting. (Check Shawn's blog to read more about the standard lighting rig and per pixel lighting. ) The other day I thought of a neat way to tuck this code away a little, so I thought I'd share.

A subclass of ContentManager could easily handle the model setup code for us automatically. It could check what kind of content it's being asked to load, and if the content type is a Model, it can set up the model automatically ...".

Read on!


Jamezilla has submitted a new tutorial to Ziggyware which shows how to implement a shockwave distortion effect in HLSL.

From the tutorial: "... The render routine will draw the scene to a RenderTarget2D, then draw the render target to backbuffer normally, then draw the render target to backbuffer again with the shockwave shader ...".

Let's read!


Cube2D has submitted a new tutorial to Ziggyware which shows how to move sprites over bezier curves.

From the tutorial: "... Just about every beginners tutorial for XNA starts off with the same things, making a sprite move along the screen. I'm going to show you how to do the same thing, but over a curved line, more specifically over a Bezier Curve. Curvy behaviour its a pretty neat thing to do for some games. You could set up a Physics engine to solve all movement in you game (a relatively complex thing to do) but for some games this would be unnecessary. For example, if your making a side scrolling shooter with aeroplanes you could very easily make your missiles drop from your aircraft, curve backwards a bit and then speed forward ...".

Read on!

Tuesday, May 01, 2007


Yeap, indeed.

Read the post on Machaira's Space blog: "... Looks like Ben Nitschke's XNA book, Professional XNA Game Programming For Xbox 360 and Windows, is doing pretty well. I got a call from Chris Webb at Wrox (since I was the tech editor on the book) letting me know that it's in the top 600 of all books on (it's at 520 at the time I'm writing this) and in the top 20 of Computer books (16 at this time). Looking at the computer related books ahead of it and considering where it's at having only been available for a couple of weeks, I have a feeling it's going to move quickly up that chart ...".

Congrats, man!


RightRiot has announced on Realmware's forums that the first open beta for Visual3D.Net framework has been released.



MCCoder has published the source code for his "Stand alone little collision manager".

From the post: "... I had previously been doing all my collision stuff during my physics steps, which led to pretty fantasic failure cases. I was checking to make sure the objects were heading in the same direction before I’d say there was a collision, but this often led to objects coming to a rest while penetrating another object (say two objects interpenetrated and bounced off each other, but not with enough force to actually seperate them) ...".

Read on.


Rick has posted an update of his "LampGame".

From the post: "... Despite my lack of posting, work on my ambient game continues. I'm working 60 to 90 hour weeks these days so I don't have a lot of free time for things like blogging, games, or sleep ...".



Tech Sammurai has published a preview of the source code of his post-procesing system.

From the post: "... Anyway, since I’m starting the development process over, I can’t just upload the entire engine for you all to try. Again, I’m really sorry. However, the PostProcessor will stay pretty much the same in terms of how it is called, so I decided to show you just how easy it will be to add Post Processing to your game ...".

Watch this space!


Bortreist has started blogging on the progress on his GUI system, called "SimpleGUI".

From the posts: "... Below is a shot of a SimpleGUI Window hosting a SimpleGrid control and four ButtonLegendLabels (I need to come up with a new name for that one) ...".



Jonas Folles is sharing his first game created with the XNA Framework to the community.

From Jonas' post: "... So as I mentioned in the beginning I just completed my implementation of PONG written using the XNA framework. I wanted my PONG game to be more "complete" than some of the XNA PONG samples available online. There are some nice tutorials you might check out. One of them is a video tutorial over at LearnXNA that walks you through an implementation of Pong. Two other implementations worth checking out are Rob Loachs' XNA Pong and Tiny Tennis up on Coding4Fun ...".

Welcome, Jonas!


There's a new post at XNAtutorial which brings some light on the Farseer singleton.

From the post: "... In other words: When starting the game, the static Farseer is not created. If a piece of code tries to access the Physics property, then the static part of Farseer is created. Or, if someone tries to instantiate Farseer, it is not instantiated, but the static part is activated ...".

More after the break!


Inverse has posted an article at Ziggyware showing how to cull objects relative to a camera's frustrum.

From the article: "... To cull an object, you have to compute the object's bounding volume. Since we are keeping this article simple we will use bounding spheres. Bounding spheres are both economical and very fast.

Iterating thru the meshes in a model, we can merge the bounding spheres to produce a composite that bounds the entire model ...".

Read on!