The following is a list of programs used in the creation of GameFromScratch, both the game, the tutorials, and the website. I will be updating this page constantly.
Hands down the biggest software decision I had to make regarding this game was what engine to use. I had the option of course of rolling my own, but that would literally have taken thousands of man-hours with no promise of coming close to feature parity or the performance levels of Unity. If I was making a simple 2D game I would perhaps have a different opinion, but in any reasonably complex game, you are most likely better served to buy an engine off the shelf, so to speak.
Now, why Unity? This is one of those things I will cover off in deeper detail in a blog post comparing all the various options, but the key reasons are as follows.
- it’s C#/.net based. If you haven’t figured it out, I am a big fan of both
- there is a free version available. When I first was kicking this idea around in my head, there was not a free option, which ruled it out. I want everybody to be able to follow along without having to spend a cent out of pocket. When Unity released a free version it jumped to the top of my list.
- it’s multiplatform. Very few game engines can target Win/Mac/iOS/Web and Android all from one source.
- it’s full featured with wide tool chain support. For the commercially minded/better funded, you can use Maya, Max or Softimage, but for the budget conscious, you can also use Blender and Cheetah.
- it’s got a world editor and powerful scripting host. Both are huge time savers.
- it’s quick. It may not be Unreal Engine quick ( it may… I haven’t benchmarked both ) but the results are still plenty quick.
- it’s proven. There are already hundreds of published titles, both from indy dev houses to large publishers like EA.
- it’s documented and supported
So, in a nutshell, those are the reasons I chose Unity. It is pretty early on and I might come to despise this decision, but my gut tells me I won’t.
3D Graphic Creation
The UI may be a little rough, the site may be a little sparse and the name may not have the brand recognition the 3D Studios Max, Maya, Softimage or even Modo have, but don’t let that fool you. Wings is one hell of a powerful little modeling program. It takes a bit of time to get to know it, and you may have to alter your thinking a little bit but once you get it, you will love it.
Wings is a modeler, pure and simple based on the now-defunct Nendo/Mirai modelers. For animation and rendering, you need another application. It is based on sub division surfaces, which more or less is now the defacto way 99.9% of game art assets are created these days. It’s lightweight, fast, fairly straightforward forward and best of all, extremely focused. Once you “get it”, modeling in Wings becomes exceedingly intuitive. Also, it is 100% free and open source. Really the only downsides I have encountered is the sparseness of documentation and sometimes the camera gets a bit “wonky” when zoomed to do close detail work.
Don’t let its price tag or relative lack of press fool you, Wings is an incredibly capable modeler that is well worth the time to learn to use. For a bit of a backstory on Wings and the program that inspired it, click here. It’s an interesting tale full of sex, violence, and drugs. Ok, there’s no sex, violence or drugs, but it is an interesting tale!
Blender is the poster child of open source 3D applications, has been around for a very long time ( roots leading back to 1995 ), all that time under constant development. One of the major complaints was just recently addressed, the UI. The UI was getting fairly long in the tooth and presented a wall of buttons. Starting in version 2.5 was a major UI overhaul which is now much more approachable. The major downside is, a lot of the documentation is now outdated and many prior tutorials are now wrong. New documentation is being written but you will find a fair bit of frustration finding the 2.5x way of doing things. Thing is, if you are using Unity’s direct Blender support, you are using 2.5x or higher.
It is a full featured suite that has produced some phenomenal results. It is often looked at as the “free” alternative to Max or Maya, but I think this is selling Maya short. As you take the time to understand the Blender way you will come to see the power of this program. Blender supports modeling, animating, compositing, texturing and rendering. I can’t even begin to give you a full feature list so I direct your attention here. Simply put though, Blender does everything you need it to create a full commercial quality game. There is a learning curve of course, but once you start to get it, it becomes much smoother. There is a method behind the madness after all!
Now, the one biggest critiques of Blender, the modeling tools are lagging against the competition, especially when it comes to sub-D surface/box modeling. The two biggest glaring omissions are NGONS ( non-quad/tri surfaces ) and no knife or split tool, which I really don’t understand why this feature is missing. Both features make polygon modeling a hell of a lot faster, so their omission is painful. Both are being worked on and hopefully come soon, Blender currently supports FGONS, but its not the same thing. Also, almost incredibly, there is no edge bevel tool, you can accomplish the same thing other ways, but it’s a pain in the ass that you really shouldn’t have to endure. Fortunately, Wings3D nicely fills this gap and both tools work extremely well together.
Again, do not look upon Blender as a poor mans 3D Studios Max or Maya, it is much much more. There are some rough spots and weaknesses, but that is true of all applications. You spend the time to learn Blender and you will come to love it. Now, that fact it costs several thousand dollars less… that’s just a major bonus!
2D Graphic Creation
This is the one area where the free/open source communities are particularly weak. The industry standard is Photoshop and there are no free alternatives that really compete on a feature / UI level with Photoshop, which is a shame. Simply put, I imagine in 95%+ game houses, both massive and indy, photoshop is the 2D graphic tool of choice, which is a shame as Photoshop CS5 starts at 700$ USD. It would be extremely nice, and would massively cut into piracy if Adobe had a “geared to income” Indy edition like Unity. Before you ask, no Photoshop Elements doesn’t cut it. That said, all is not lost, there are some options out there for those of you unwilling to fork out 700$ bucks.
What about the GIMP you no doubt are saying. Well, this is very much an option but from my prior experiences, the GIMP ( GNU Image Manipulation Program ) is about as pleasant as a root canal. Some programs have an “odd” UI, that once mastered makes a lot of sense ( Blender, Wings, and Softimage all fit this category ), but I don’t think I would put GIMP in that category. GIMP has a bad UI, period.
Of course, such things are a matter of opinion, and if you can get over the interface, GIMP really is the only feature comparable free option to Photoshop. It really is too, damned near matches Photoshop feature for feature. Check it out and see what you think… me, I will use it when I absolutely have to, but no more. All that said, there are strides being made to work on GIMPs usability, and hopefully, they bare fruit, as the core here is a gem.
This application is simply put amazing. It is what it is and no more, but it does what it does perfectly. Take Microsoft Paint + Adobe Photoshop and divide by two, you get Paint.net. It can be looked at as a better MS Paint, or a weaker Photoshop, and both would be very valid tools. To be honest, with a few tweaks ( Dodge Burn Tools, better cloning, magic wand selection, slightly better layer support, etc… ) this really could be a viable Photoshop alternative for texture artists. As it stands, its pretty damned powerful and oh so damned easy to learn. It’s my go-to for really quick image work and is probably the tool I will be using the most.
Really I can’t say this strongly enough, this is an example of software done right. It is about as approachable as any piece of software you will find is rock solid and performs well. It’s also completely free, so even if you have Photoshop, check it out. It is donation supported, and being such a stellar piece of software, I do strongly suggest people donate if they like it, as this is a program I want to see have a strong future.
It’s what powers this site. Generally, I have made sites from scratch and this is my first “content” oriented site so reinventing the wheel seemed like an especially stupid thing, especially with a few hundred CMS applications to choose from.
I choose Blog Engine because it was easy, small footprint, themeable, customizable, dot net powered, able to be self hosted, easy to install, and free. Thus far, it has been all of these things. There are more capable offerings out there, but in some ways, they were too complex or expensive for my liking. In the end, I don’t care all too much about the bells and whistles of this site, I care more about the content. So far, BE has done everything I can ask of it, with an open enough API/plugin system that I can program around any future roadblocks.
Only real caveats thus far are, much of the documentation and samples are for version 1.6 and lots of things don’t work exactly the same between versions. Also, the sources are currently broken so the option of making my site into a Visual Studio project ( very cool by the way ), simply didn’t work and I didn’t much want to take the time making it work, maybe in the future.
It’s only been a short while, but I am quite impressed with my experiences so far. If you are a .net developer, I highly recommend BlogEngine. Even if you are not, it’s worth checking out.
What can I say, Microsoft did a good job with their Windows Live tools. This post was written in Windows Live Writer. Basically it’s a stripped-down and easier to use version of Word. It has a decent level of formatting features and most IJW ( it just works ). I do wish there was the ability to post video files except to online services like YouTube, or to publish arbitrary downloadable files with a blog post ( like for example, zips ), but these are both minor glitches.
Now on the major glitch front, you may encounter an error where you can no longer post to your blog, unfortunately, I don’t recall the exact wording. The solution is simple enough, select “Add another blog account”, and create another reference to your blog with a different name. This fixes whatever the glitch was, then the next time you encounter this bug, select your earlier account and this again will fix the error. Annoying, but once solved, no game stopper.
It’s free and frankly, it works extremely well. I use it to compose many of the videos on the site, especially the time-lapsed ones made up of a series of screen shots. There are some annoying anomalies like text caption times resetting when you resize the video or the annoyance of trying to move to the last frame and the inability to say “Always position here!”. Also, getting it not to do fancy transitions and fades is a bit irritating but compared to the alternatives, it was about as easy and capable as I needed. Capable of stitching pictures and videos together and save to various formats ( MP4, WMV, AVI ) and publish to the web, it saved me from having to buy something much more expensive or from working in Expressions, which is much more difficult.
Evan’s Movie to Animated Gif Utility
Really, its exactly what it says it is. Load a avi/wmv/mpg/mp4 file, set a couple settings and click Save Frames… There are a few options to set and the results are reasonably quick. Its locked up a few times and is rather basic but did exactly what I wanted with less than 2 minutes effort, including download time! Update: Errors and locks up, A LOT. Still, free.
Stay tuned, update coming shortly.