A game and physics engine for Flash including:
- Rigid Body Dynamics
- Scene management
- Line of sight
- User Input
- Scrolling
- AI
Core parts of the physics solver and collision system are based on the C physics engine Chipmunk
Development
Apart from the conversion from C to AS3 and OOP, many adaption have be made to tune the engine for the performance characteristics of the AVM2. In summary:
- The original relies heavily on memory operations & copy/update arrays for many things - especially contact lists. Array operations (splicing, adding/removing elements) is expensive in this situation. AVM2 Optimization All these arrays were replaced with linked lists