awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

游戏引擎架构

排名更新于 2026年7月2日

For an open source game engine architecture, the strongest matches are pytransitions/transitions (Transitions is a dedicated finite state machine library for), sschmid/entitas-csharp (Entitas-CSharp is an Entity Component System framework for C) and jakesgordon/javascript-state-machine (This finite state machine library provides reusable state‑driven logic). skypjack/entt and sandermertens/flecs round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.

探索最佳的开源游戏逻辑实现。通过活跃度和功能对比顶尖架构,找到最适合你项目的方案。

游戏引擎架构

用 AI 发现最棒的仓库。我们将通过 AI 为您搜索最匹配的仓库。
  • pytransitions/transitionspytransitions 的头像

    pytransitions/transitions

    6,548在 GitHub 上查看↗

    Transitions is an object-oriented finite state machine library for Python. It provides a framework for managing valid states and the logic for moving between them, including implementations for asynchronous state machines and thread-safe state managers. The library supports hierarchical state machines that allow states to be nested to organize complex subtasks and logical contexts. It includes tools for generating visual diagrams of states and transitions to document machine logic. The project covers state management primitives such as lifecycle callbacks, conditional transition guarding, an

    Transitions is a dedicated finite state machine library for Python with support for serialization, event-driven transitions, and hierarchical states, making it a solid match for reusable game logic components—it focuses on state machines rather than the broader set of features like entity-component systems or behavior trees.

    PythonFinite State Machine EnginesPersistence and Serialization
    在 GitHub 上查看↗6,548
  • sschmid/entitas-csharpsschmid 的头像

    sschmid/Entitas-CSharp

    7,655在 GitHub 上查看↗

    Entitas-CSharp is a data-oriented architectural framework for managing application state and logic in C# and Unity environments. It implements the Entity Component System pattern to separate raw data components from the logic systems that process them. The framework includes a code generator that automatically produces type-safe boilerplate classes and methods at build time. It also provides a visual state inspector for examining entities and components in real time within the Unity editor. The library covers data-oriented programming and game state debugging, utilizing a memory-efficient ap

    Entitas-CSharp is an Entity Component System framework for C# and Unity that provides data-oriented state management and reactive systems, which aligns with the entity-component and event-driven requirements, but it does not include built-in state machines, behavior trees, rule engines, or serialization.

    C#Entity Component Systems
    在 GitHub 上查看↗7,655
  • jakesgordon/javascript-state-machinejakesgordon 的头像

    jakesgordon/javascript-state-machine

    8,751在 GitHub 上查看↗

    This library is a finite state machine framework for JavaScript designed to manage application states and valid transitions. It provides a system for executing state changes with lifecycle hooks, conditional guards, and transition cancellation. The project is distinguished by its ability to inject state machine logic and transition capabilities directly into existing JavaScript class instances or objects. It also includes a visualization tool that exports state configurations into Graphviz DOT language for auditing system logic. The framework covers asynchronous transition execution and paus

    This finite state machine library provides reusable state‑driven logic with lifecycle hooks and guards, fitting the request for a game logic component, but it lacks the other requested features such as an entity‑component system, behavior trees, or serialization.

    JavaScriptFinite State Machine EnginesFSM Behavior Injectors
    在 GitHub 上查看↗8,751
  • skypjack/enttskypjack 的头像

    skypjack/entt

    12,294在 GitHub 上查看↗

    EnTT is a C++ library designed for data-oriented design and entity component system architecture. It provides a framework for managing game objects and simulation states by separating entity data from logic, allowing for the efficient organization and manipulation of large collections of related data objects. The library utilizes sparse sets to store entities and components in contiguous memory, which facilitates cache-friendly iteration and constant-time lookups. It employs template metaprogramming for compile-time type reflection and type-erasure techniques to provide a unified interface fo

    Entt is a high-performance C++ entity-component system library that separates game object management from rendering, providing an event-driven architecture and efficient data-oriented design—fitting the search for reusable game logic libraries, though it focuses on ECS and event handling rather than built-in state machines or behavior trees.

    C++Entity Component Systems
    在 GitHub 上查看↗12,294
  • sandermertens/flecsSanderMertens 的头像

    SanderMertens/flecs

    8,045在 GitHub 上查看↗

    Flecs is a high-performance entity component system framework and data-oriented programming library. It serves as a simulation engine core and game engine architecture tool, decoupling state from behavior by separating entities, components, and systems. The framework features a runtime reflection layer for dynamic data inspection and a built-in scripting system for defining entity behavior without recompilation. It also includes a network interface and REST API for remote simulation administration and state querying. The library covers a broad surface of simulation capabilities, including ar

    Flecs is an entity-component-system framework that cleanly separates game logic from rendering and includes event-driven architecture and reflection for serialization, but it does not directly provide built-in state machines, behavior trees, or rule engines, so it matches the desired category with a narrower feature set.

    CECS LibrariesEntity Component Systems
    在 GitHub 上查看↗8,045
  • ashblue/fluid-behavior-treeashblue 的头像

    ashblue/fluid-behavior-tree

    1,166在 GitHub 上查看↗

    Fluid Behavior Tree is a code-driven framework for Unity designed to manage autonomous character behaviors through hierarchical decision-making structures. It functions as a game AI logic engine that processes complex entity behaviors by traversing directed graphs of nodes that return success, failure, or running status signals during each frame update. The library distinguishes itself through a fluent builder pattern that allows developers to define nested tree structures, sequences, and parallel execution flows entirely through chainable code methods. This approach emphasizes modularity, en

    This is a behavior tree library for Unity3D, implementing one of the requested reusable game logic components (behavior trees) with a code-driven builder pattern, but it is tied to Unity and does not cover state machines or rule-based logic.

    C#Behavior Tree AIBehavior Trees
    在 GitHub 上查看↗1,166
  • pluginaweek/state_machinepluginaweek 的头像

    pluginaweek/state_machine

    3,722在 GitHub 上查看↗

    This project is a Ruby library for defining and managing object lifecycles through states, events, and transition rules. It functions as a declarative workflow engine that enforces business logic by restricting attribute changes to predefined, valid paths within Ruby classes. The library distinguishes itself through deep integration with database persistence layers, allowing it to automatically synchronize state changes with data models, validation frameworks, and transaction management. It supports dynamic configuration, enabling the construction of lifecycle rules at runtime from external d

    This Ruby library provides a state machine implementation that can be used as a reusable game logic component, matching the request for a component separate from a full engine, though it focuses solely on state machines and lacks the other requested features like entity-component systems or behavior trees.

    RubyLifecycle ManagementApplication State MachinesApplication State Management
    在 GitHub 上查看↗3,722

Related searches

  • a collection of common game programming patterns
  • 游戏开发
  • an open source engine for model inference
  • Workflow orchestration engine
  • 开源游戏开发引擎
  • State management library
  • a collection of tools for game development
  • Sprite manipulation tools