{"repo":"NGLSG/Luma","free":true,"listed":false,"github":"https://github.com/NGLSG/Luma","clone":"git clone https://github.com/NGLSG/Luma.git","description":"A modern, high-performance, cross-platform, data-driven 2D game engine built with C++20 and .net 9.","language":"C++","stars":41,"topics":["2d-game-engine","cpp","cpp20","data-driven","dotnet","game-engine","gamedev","job-system"],"license":"MIT","category":"game-templates","readme_excerpt":"Luma 引擎 现代化 · 模块化 · 数据驱动 · 高性能 2D 游戏引擎 基于 C++20 与 C# (.NET 9 CoreCLR) 构建，旨在成为 Unity 2D 的强大替代方案。 --- English Version 引擎架构 --- 目录 概览与设计哲学 核心特性与性能概览 性能对比：Luma vs. Unity DOTS 功能一览 技术栈 渲染系统说明（新增 Nut 渲染器） Shader 模块系统（新增） 快速开始 编辑器断点调试支持 核心系统概述 项目状态与路线图 贡献指南 许可证 社区与支持 --- 概览与设计哲学 Luma 引擎专注于构建极致性能与现代化工作流的 2D 游戏引擎： 数据驱动 ：场景、组件、动画以可序列化数据为核心。 模块化架构 ：渲染、物理、音频均可独立替换。 性能优先 ：ECS + 并行 JobSystem。 --- 核心特性与性能概览 性能对比：Luma vs. Unity DOTS Unity 版本：6.1 LTS；同一硬件与等价场景设置。 实体数量 Luma 引擎 (FPS) Unity DOTS (FPS) 性能倍数 :-------: :-----------: :--------------: :----: 100,000 200 30 6.6× 200,000 112 15 7.0× 1,000,000 25 2 12.5× 物理模拟（Box2D，10,000 动态刚体） 指标 Luma Unity 性能倍数 :----: :-----: :------: :---: 总帧时间 2.40 ms 45.45 ms 18.9× 理论 FPS 416 22 18.9× --- 功能一览 现代 ECS（EnTT） JobSystem 并行计算（C++/C# 协同） 蓝图节点系统（可编译为 C#） C++ / C# 热重载互操作 Box2D 物理、Tilemap、UI 自动布局、音频系统 2D A 寻路系统（NavGrid + Pathfinder） 资源热重载（FileWatcher 自动检测变更） Skia + Nut 混合渲染管线 自定义材质管线 / 实例化渲染 Shader 模块系统 + Shader 预热 跨平台编辑器：Windows / Linux / Android 发行支持：DX12 / DX11 / Vulkan / OpenGL / GLES 高性能粒子系统 粒子碰撞（与物理系统协作） 动画粒子（Flipbook/帧动画） 粒子自定义材质 效果器组合（Modifiers Stack） 完整生命周期管理 --- 技术栈 分类 技术 说明 :----- :------------------------ :-------------------- 核心语言 C++20 / C# (.NET 9) 性能与灵活性 ECS 框架 EnTT 高性能 ECS 渲染后端 Skia + Nut(wgpu/dawn) 2D + 自定义 GPU pipeline 物理引擎 Box2D 2D 动力学 音频 SDL3 Audio 多声道混音 编辑器 UI Dear ImGui 即时模式 UI 序列化 yaml-cpp / json 数据驱动 --- 渲染系统说明 Luma 的渲染系统现支持 双路径混合渲染 ： Skia 渲染路径 主要用于 UI / 矢量 / 调试图形 兼容性高、开发效率高 Nut Renderer 基于 Dawn (wgpu) 的现代 GPU 渲染器： 支持 自定义材质 Shader P","default_branch":null,"files":null,"tree":[],"storefront":"/r/NGLSG","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/NGLSG/Luma/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}