Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon

3. May 2011

In a recent forum conversation, it was brought to my attention a previous work of mine was now unavailable online.  You see, when XNA was a new technology I started writing a free book on the subject, working with the release candidate.  In the end I wrote 4 chapters, then Microsoft released XNA 1 and there were some major changes that would more or less have meant a complete rewrite, which didn’t seem all to exciting a proposition.  That told, all the chapters combined were downloaded well over a 1/4 million time, so it did have an audience.

 

xnaAnyways, the website that hosted these documents is now gone, as is the old mirror I hosted to.  By request, I managed to find the files, dust them off and I am posting those files here.  Keep in mind, these were written in 2006 and target a pre-release version of XNA, so the use is pretty extremely limited.

 

 

 

 

If for some reason you are still interested, here they are:

Chapter One

Chapter Two

Chapter Three

Chapter Four

 

Also, of some possible interest, I was in the middle of authoring a complete very simple 2D game for Chapter 5.  The texts are gone, but I have the unfinished source code and assets right here.  It’s not complete, polished and nor does it compile anymore.  It did back in the day, I remember that much, before the final release of XNA 1 this code was 100% working.  I don’t know if it will be of use to anyone, but here it is!

 

Chapter 5 Game Source Code [ 18 MB download ]

 

Enjoy this trip down memory lane.

Programming

1. May 2011

 

Hmmmm, really need to settle on a name for the bipedal robotic characters that isn't Mech/Mecha soon just to ease these conversations! Not my most creative day so I’ll just go with GPR now.

 

Anyways, the GPR is very much fundamental to the game.  One of my favorite things about Autoduel and Mechwarrior Mercs was the sense of acquisition.  Start with a lowly machine and work your way up the ranks.  One of my favorite factors of Chromehounds was the customization aspect.  I intend to incorporate both into our game.

 

The very first Mech, er GPR the character starts with is power_loadervery primitive, like the Powerloader from Aliens that Ripley used.  Very simple bipedal machine with a single weapon forward firing weapon mount.  As the player wins matches, they will have the option of swapping that weapon out for better weapons and eventually with be able to buy better GPR frames.  In the end though, it will entirely be about trade offs.

 

Each frame will have a certain number of slots available, of different sizes to accommodate different sized weapons.  Additionally frames will be able to have different power plants, that will be a factor in speed, battery life, weapon power and charges.  So you could mount a big heavy laser, that really sucks the juice or mount smaller engine which would be lighter and faster but couldn’t power the weapons as well.

 

It is all about trade offs, so you could create a fast lightly armed frame, or a heavily armed slow machine or simply an average all around machine.  You could also use munitions based weapons like rocket launchers or machine guns that don’t use energy from the engine, but once they run out of ammunition are as good as useless. 

 

cci_40All frames start with a certain amount of energy, tied to the type of power plant installed.  Things like the weight of the frame ( from weapons and armor ), firing of energy weapons, running at high speeds, taking damage from certain types of weapons, etc.  If energy goes to zero, you stop dead and can’t fire.  Engines will recharge slowly on their own, so you need to balance speed and weapon use to keep your power levels healthy.  Or, go with a power plant that has a rapid recharge rating.  In my head now, statistically a power plant is rated by:  size ( amount of space needed by frame to install ), weight, power available, recharge rate and frame class(es) ( what size of frames the engine can be install into ) and finally cost.

 

Frames work on a very similar manner, with various weight classes, like featherweight, light, medium, etc…  In addition they have variant number of weapon mounts of different types ( forward facing, 360, back facing, 360 degrees auto tracking, pod based, etc ), maximum weight for all add-ons ( engines, weapons, armour, etc ), maximum internal space for engines.

 

So, in the beginning, machines would be only a few meters tall, with a single weapon and underpowered engines and minimal armor.  By the end though, the player could be piloting a literal titan, several meters tall and bristling with weapons and armor.  Of course then, so will their enemies. 

 

From a developers perspective, this means I need to figure out how to make weapons44784_md-Guard, Imperial, Sentinel, Tank, Walker, Warhammer 40,000 modular.  In the end I imagine this comes down to dynamic parenting of bones, but it is something I need to look into from a technical point of view before continuing too far ahead.  I had been tempted to make frames even more customizable, so different legs, torsos, cockpits, arms and weapons, but truth is I think the level of work is too high to handle right now, especially when it comes to creating the animations.  If the modular weapons end up being not too difficult, I may revisit this concept.

 

You know, the name Frames is starting to grow on me.  BattleFrames?  Battle Frame Formats?  Yeah, that’s the perfect name, BFF!  Oh, wait….  *groan*  Back to the drawing board.

 

For those looking at the various inspirational images in this post, they are from the top Ripley in a Power Loader in Aliens, the Walker from Avatar and finally the Imperial Guard Walker, which is probably the closest in my minds eye to the kind of vehicle the player will start in.  Think of it like the go-cart of Frames.

1. May 2011

 

Hmmmm, really need to settle on a name for the bipedal robotic characters that isn't Mech/Mecha soon just to ease these conversations! Not my most creative day so I’ll just go with GPR now.

 

Anyways, the GPR is very much fundamental to the game.  One of my favorite things about Autoduel and Mechwarrior Mercs was the sense of acquisition.  Start with a lowly machine and work your way up the ranks.  One of my favorite factors of Chromehounds was the customization aspect.  I intend to incorporate both into our game.

 

The very first Mech, er GPR the character starts with is power_loadervery primitive, like the Powerloader from Aliens that Ripley used.  Very simple bipedal machine with a single weapon forward firing weapon mount.  As the player wins matches, they will have the option of swapping that weapon out for better weapons and eventually with be able to buy better GPR frames.  In the end though, it will entirely be about trade offs.

 

Each frame will have a certain number of slots available, of different sizes to accommodate different sized weapons.  Additionally frames will be able to have different power plants, that will be a factor in speed, battery life, weapon power and charges.  So you could mount a big heavy laser, that really sucks the juice or mount smaller engine which would be lighter and faster but couldn’t power the weapons as well.

 

It is all about trade offs, so you could create a fast lightly armed frame, or a heavily armed slow machine or simply an average all around machine.  You could also use munitions based weapons like rocket launchers or machine guns that don’t use energy from the engine, but once they run out of ammunition are as good as useless. 

 

cci_40All frames start with a certain amount of energy, tied to the type of power plant installed.  Things like the weight of the frame ( from weapons and armor ), firing of energy weapons, running at high speeds, taking damage from certain types of weapons, etc.  If energy goes to zero, you stop dead and can’t fire.  Engines will recharge slowly on their own, so you need to balance speed and weapon use to keep your power levels healthy.  Or, go with a power plant that has a rapid recharge rating.  In my head now, statistically a power plant is rated by:  size ( amount of space needed by frame to install ), weight, power available, recharge rate and frame class(es) ( what size of frames the engine can be install into ) and finally cost.

 

Frames work on a very similar manner, with various weight classes, like featherweight, light, medium, etc…  In addition they have variant number of weapon mounts of different types ( forward facing, 360, back facing, 360 degrees auto tracking, pod based, etc ), maximum weight for all add-ons ( engines, weapons, armour, etc ), maximum internal space for engines.

 

So, in the beginning, machines would be only a few meters tall, with a single weapon and underpowered engines and minimal armor.  By the end though, the player could be piloting a literal titan, several meters tall and bristling with weapons and armor.  Of course then, so will their enemies. 

 

From a developers perspective, this means I need to figure out how to make weapons44784_md-Guard, Imperial, Sentinel, Tank, Walker, Warhammer 40,000 modular.  In the end I imagine this comes down to dynamic parenting of bones, but it is something I need to look into from a technical point of view before continuing too far ahead.  I had been tempted to make frames even more customizable, so different legs, torsos, cockpits, arms and weapons, but truth is I think the level of work is too high to handle right now, especially when it comes to creating the animations.  If the modular weapons end up being not too difficult, I may revisit this concept.

 

You know, the name Frames is starting to grow on me.  BattleFrames?  Battle Frame Formats?  Yeah, that’s the perfect name, BFF!  Oh, wait….  *groan*  Back to the drawing board.

 

For those looking at the various inspirational images in this post, they are from the top Ripley in a Power Loader in Aliens, the Walker from Avatar and finally the Imperial Guard Walker, which is probably the closest in my minds eye to the kind of vehicle the player will start in.  Think of it like the go-cart of Frames.

Design

30. April 2011

While working on an upcoming beginners guide to Wings, I put some thought into something I had never really thought about before…  what the heck was the “Crease” command for?  Functionally it seemed identical to extruding an edge along its normal.  After some messing around though, I figured out the very small but somewhat important difference between the two commands.

The following video shows the difference in action.

Extrude vs Crease in Wings 3D

 

As you see, with Extruding, a 5 sided polygon is created just past the edge that was extruded.  With crease the polygons are created using the next available vertex along the edge.  This is a very minor distinction, as otherwise the two functions are almost identical, but the effect is most pronounced once smoothing is applied.

CreaseVsExtrudeResults

 

So, damned near the same, but slightly different.  But in answer the question “Whats the difference between extruding and crease?” the answer is “not much”.

Art

30. April 2011

6a00d8341c858253ef00e54f2306618834-640wiSo, choosing Blender for my art pipeline has some very big upsides, and a couple massive downsides.

 

Amongst the biggest downsides is that Blender is in the midst of a very long move from 2.4x to 2.5x, which means you are effectively using beta software in production.  Frankly, the 2.5x branch is probably as stable as the 2.4x branch with some major feature improvements.  That said, there is a giant downside… all kinds of documentation is simply and massively WRONG.

I just spent 2 hours trying to get a textured model into Unity, and for the love of all that is, I simply couldn’t get textures to work.  After many google sessions, I read that TexFace needs to be enabled… simply press F5 or F9, but again, these instructions are for 2.4x and are outdated.

I finally found the way after much confusing.

Properties->Material Icon ( the Ball )->New Material->Assign, then scroll down to Options and click Face Textures.  Done.  That was intuitive now, wasn’t it?

 

The following video illustrates that process.  Again of key note If you are using Blender with Unity, your textures WILL NOT WORK if you do not follow this process.

 

Enabling TexFace in Blender 2.56

Art , ,

Month List

Popular Comments