The Render Engine
Check it out here: http://bfattori.github.com/TheRenderEngine/
The Render Engine supports:
- Internet Explorer 9.0+
When creating games, it is often quite easy to reimplement the same code over-and-over. You need to do things with keyboard or mouse input, or you have to render your character to the screen, you might also want to know when two objects collide. Instead of rewriting this code (or god forbid, copying it) The Render Engine is based on the idea of components.
Each component is intended to perform a discreet task. These tasks fall into one of the five types of operations:
- Transform (movement)
These operations execute from the top down for each game object. First an object processes its inputs, then moves, next it performs any logic, the next step is to check collisions, then it renders. Each game object can have as many of each type of component within it. The components can be assigned a priority, with a higher priority executing before a lower priority. This way, each game object can delegate a majority of its operation to these reusble components which frees you up to work on the game-specific implementation of your game object.
How Do I Use This Thing?
Understand that what you have here is known as a "game engine". Just like in a car, you can design a fancy body, amazing interior, outfit it with chrome 22's, etc. But until you put an engine in it and wire everything up, that car is just a concept. The Render Engine provides you with this "engine" to make your game run. It also contains many objects which will take care of doing the most mundane things so that you can focus on your game, not the fundamentals.
Tutorials & Demos
The included tutorials and demos are provided to help you understand the framework and how everything works together. Each tutorial is intended to either build upon a previous tutorial, or provide an introduction to an engine feature. The demos are meant to be more complete examples of different concepts working together to form a game.
(c)2008-2013 Brett Fattori (firstname.lastname@example.org) MIT Licensed