A high-performance Java Entity-Component-System framework for game development, supporting Android, HTML5, and iOS.
Artemis-odb is a Java-based Entity-Component-System (ECS) framework designed for high-performance game development. It provides a structured architecture where entities are composed of reusable components, processed by systems, enabling scalable and maintainable game code. It solves the problem of managing complex game state and behavior efficiently, with a focus on reducing garbage collection overhead and boilerplate.
Game developers using Java or JVM languages, particularly those targeting Android, HTML5, or iOS platforms, who need a robust ECS framework for building performant games or simulations.
Developers choose Artemis-odb for its proven performance benchmarks, compile-time optimizations via bytecode weaving, and mature ecosystem with extensive tooling and community support. It offers a seamless migration path from the original Artemis framework while adding modern features like fluid APIs and serialization.
A continuation of the popular Artemis ECS framework
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses bytecode weaving for hotspot optimization and auto-pooled components, reducing garbage collection overhead as demonstrated in public benchmarks.
Fully compatible with Android, iOS, and HTML5 via GWT, enabling cross-platform development without major code changes.
Supports JSON and binary serialization for entities and components, simplifying save/load functionality and state persistence.
Offers optional fluid entity interfaces that reduce boilerplate and speed up early development iterations.
Provides an easy migration from other Artemis clones, easing the transition for teams upgrading their ECS infrastructure.
Requires compile-time bytecode weaving, which can complicate build configurations and may not integrate smoothly with all IDEs or CI/CD pipelines.
Lacks built-in rendering, audio, or physics systems, forcing developers to assemble and manage additional libraries for a complete game.
Tied to the JVM ecosystem, which may hinder low-level memory control or integration with non-Java tools compared to C++ alternatives.
While extensions exist, core documentation is wiki-based and community-driven, leading to potential gaps in official support for advanced use cases.