====== Apparatus Features ====== The current list of features includes: * Fundamentally ECS. A complete Unreal Engine integration of the [[en:toolworks:docs:apparatus:ecs|data-oriented]] workflow. * Loyal to the ecosystem. Both C++ and Blueprint development paths are supported. * Best of two worlds. Flexible UObject-based [[en:toolworks:docs:apparatus:detail|Details]] and firm, performant [[en:toolworks:docs:apparatus:trait|Traits]]. * Pedal to the metal. Featuring the Chunk-based data storage that is hardware-friendly and [[wp>CPU_cache|cache]]-oriented by design. Quite a bit of performance optimizations on top: lookup tables for a faster Filtering, bitarray-based matching, mainline Component indexing and more. * Power at your fingertips. Our [[cpp>language/lambda|lambda]]-based [[en:toolworks:docs:apparatus:operating|operating]] with an argument dependency injection is your next favorite shorthand. * Querying with ease. A versatile Component-including and -excluding filtering for the Mechanics. * Fine-grained selection. Bitwise [[en:toolworks:docs:apparatus:flagmark|Flagmark]] filtering support for boolean-based states. * Straightforward editing. Assign and customize your Component blocks right from the [[ue>ProgrammingAndScripting/Blueprints/Editor/UIComponents/Details/index.html|Details Panel]] in Unreal Editor. * Multiple Details of the same class on a single Subjective are supported. All of the available Detail combinations are processed in the Operating body. * Inheritance at will. The Detail classes can be inherited for extra modularity and flexibility. * Concurrency scaling. Full multi-threaded iterating support with a dedicated compile-time [[en:toolworks:docs:apparatus:solidity|Solid]] semantic for extra safety. Supports [[en:toolworks:docs:apparatus:deferred|deferred]] execution of the transactions. * Ready to speak traffic. An elegant and versatile custom [[en:toolworks:docs:apparatus:networking|networking]] solution built upon the Unreal's replication and RPC functionality. * Dedicated in-Editor user experience touches for some clear reading, validation and overall ease of use. * Stable clockwork. The [[en:toolworks:docs:apparatus:steady-tick|steady-ticking]] implementation provides for some extra stability of your frame-dependent logic. * Thoroughly documented [[appi>|API]] with a dedicated [[en:toolworks:docs:apparatus|user manual wiki pages]].