Entreri is a free and open-source entity-component framework that you can use to avoid the OO-hell that can develop when creating games in Java.
Entreri is specially designed for high performance, extensively avoids branching, and features much better cache locality than using normal Java references.
Using well-specified conventions, components are mapped onto primitive arrays so that iteration is fast without object overhead. Garbage collection can move objects around, hurting locality when using Object arrays or collections.
By using primitive arrays or buffers stored in blocks, all of your game data will be automatically stored in a cache friendly, and iteration friendly manner.
In off-the-cuff performance tests, garbage collection in other entity-component frameworks could cause a performance slow down by a factor of 2 to 4, while Entreri remained consistently fast (pre-GC performances were effectively identical).
Requirements:
· Java