|
Project Information
Featured
Links
|
VERSION 1.0 RELEASEDUPDATE : Documentation FINALLY updated UPDATE : Initial example created Entity BasedThe framework is primarily an implementation of the Entity paradigm using the Slick2d game engine. Entities are composed by states and actions, states contain the entity data, actions perform the game functionality based on the entity states. These entities communicate via actions, launched when needed and die when the action is no longer needed. As an example of this, think on a movement action, when the input is received from a keyboard, a movement action is launched to perform that movement, when the game avatar reaches the target the movement actions is destroyed and the avatar stops.
ManagersA set of managers exist to help the users of the framework to use all entities, forms actions, etc with performance in mind. - Render Manager - implements the concept of layers and scene.
- Action Manager - performs all actions of the system.
- Resource Manager - offers a way to load resources and to access them on demand by and ID.
- Collision Manager - collision management driver collection to help perform all collisions in your game.
Render ManagerUsing a form to render an entity, it is easy to change the way a entity is displayed, since all forms have the same interface. This way it is easy to change from a static image render to a fully animated one, without changing a lot of code.
Action ManagerThe game update cicle happens in the action manager. If no action is running, there is no need to call any update. This is achieves very good performances, using resources and updating the world only when needed.
Collision detectionOut of the box, Spartan is able to detect collisions between any Slick2d shape. The collision manager then is responsible for fiding a way (a handler) to resolve those collisions.
Incoming additions- Loading entities from an XML file into the Entity Manager.
- Scripting engine integration
- Network client/server approach to create multiplayer games
- Simple Physic library integration
~Spiegel~
|