Editor Design

Before I get into the code behind the game editor, I wanted to post some information about how it works. I want to do this both to keep the actual tutorial shorter (because it’s looonnnnggggg right now), and to help you better understand what we are doing when we write the code itself. The editor [...]

XNA Game Engine Tutorial Series #11: Serialization

One of the big features any useful engine needs is the ability to save its state and the state of its components to file. This is necessary for things like saving a game, but is more useful for things like saving a scene in an editor. C# provides two types of serializer. The first is [...]

SpriteBatch, Renderstates, and You

It seems like alot of people are having problems when writing their own code for the engine, where they are getting issues with things like texture stretching, transparency, depth buffer issues, etc. Almost always, this is because of SpriteBatch. When you use the SpriteBatch, it changes alot of RenderStates (Engine.Graphics.RenderState.###), and this can mess things [...]

XNA Game Engine Tutorial #10: Post Processing

In this tutorial, we will be adding a postprocessing system to our engine. A postprocessor is an effect (.fx file) that only contains a pixel shader. It takes the current frame buffer value and applies the pixel shader to it, applying effects such as blurs, bloom, and special effects. The post processor class is called [...]

XNA Game Engine Tutorial Series #9: ComponentPredicate and Materials

In this tutorial we are going to create a component predicate, a class used to determine whether or not a component will be used for an action. This is useful for things like special drawing, for example when drawing shadows we only want shadow casters to draw when creating the shadow map. Side note: I [...]

XNA Game Engine Tutorial Series #8: Basic Terrain

In this tutorial we will be creating basic terrain from a heightmap. This is starting code for a more advanced terrain we’ll make in a later tutorial. This one has no efficiency algorithms or fancy drawing techniques like multitexturing and atmospheric scattering. The idea here is that you have a grayscale picture, and you generate [...]

« Previous Entries Next Entries »


RECOMMENDED