This is an old revision of the document!
Tools for rapid prototyping of games
Good things for prototype systems:
- Based on a high level programming language
- Smallness
- Cross platform
- Mature toolchain to simplify asset generation
- Ease of moving to a production engine
Online
Advantages:
- Low tech forces focus on the ideas - this is really important I think
- Ease of running/viewing/playing
- Use of commonly installed things - web browser/flash plugin, blah.
Disadvantages:
- Have to run everything in a virtual machine/interpreter so a bit slow
- Not much in the way of graphics features (not really a problem for prototyping)
- 3D possible but is not really the focus in these systems, so it can be awkward
processing → http://processing.org/
haxe (compiles to swf/js/…) → http://haxe.org/
3D Engine based
Advantages:
- Prototyping in the same system you produce the game in saves time (arguably)
- You can have access to the same features in the prototype as a final game
Disadvantages:
- Complexity kills creativity - game engines tend to have a lot of complexity
- Have to install stuff, more chance of platform incompatibility
Blender game engine → blender game engine notes
- Blender is a good option as it's the same tool used to create the artwork - there may already be a familiarity
- Scripted in python which is a good prototyping language
Fluxus → fluxus notes
- Fluxus is scripted in Scheme which is a good prototyping language
- Deliberate perversion to games industry 'best practices'
- Not working on windows
- Difficult to install - big minus points
- Works best for fast graphics prototyping at this point (rather than gameplay prototyping)
- Frisbee (functional reactive programming/animation in fluxus) might provide a much better, smaller, more creative way of writing games, but it's unproven (to me) and highly experimental at this point.
PyGame → http://www.pygame.org/news.html
Mainly sprite based examples, there are some 3D games, but most seem to involve calling opengl commands wrapped in scheme, rather than a complete entity model (I might be wrong these days tho)
Old School
Blitz Basic → http://www.blitzbasic.com/ who make Blitz3D → http://www.blitzbasic.com/Products/blitz3d.php
Lots of games written in this, very popular in the indy game dev scene.
Costly
Virtools → http://www.virtools.com/
Does online, visually programmed, and looks very suitable - just also kinda expensive.
Unity → http://unity3d.com/
Panda3d → http://panda3d.org/