عن المشروع

Flecs هو إطار عمل عالي الأداء لنظام الكيانات والمكونات (ECS) مصمم لمطوري C وC++ الذين يبنون الألعاب والمحاكاة. يوفر حلاً سريعًا وخفيفًا وقابلاً للنقل مع واجهة برمجة تطبيقات C99 بدون تبعيات وواجهة برمجة تطبيقات C++17 حديثة وآمنة الأنواع تتجنب حاويات STL. تشمل الميزات الرئيسية: - **علاقات الكيانات**: دعم كامل لعلاقات الكيانات، وهو الأول من نوعه في نظام ECS مفتوح المصدر. - **التسلسلات الهرمية والقوالب الجاهزة**: دعم أصلي لمخططات المشهد وقوالب الكيانات القابلة لإعادة الاستخدام. - **الأداء**: تخزين صديق للذاكرة المؤقتة بنمط archetype/SoA يمكنه معالجة ملايين الكيانات في كل إطار، مع مجدول بدون أقفال للتنفيذ متعدد النوى. - **قابلية النقل**: يُبنى في أقل من 5 ثوانٍ ويعمل في المتصفح عبر emscripten دون تعديلات. - **الانعكاس**: إطار عمل انعكاس مدمج مع تسلسل JSON ودعم مكونات وقت التشغيل. - **لغة الاستعلام**: نظام استعلام قوي مع عمليات join والوراثة. - **الأدوات**: إضافة إحصائيات للتنميط وواجهة ويب (Flecs Explorer) للمراقبة والتحكم. يُستخدم Flecs في عدة ألعاب تجارية، بما في ذلك Tempest Rising و Territory Control 2، وله مركز مجتمعي (Flecs Hub) يحتوي على وحدات للتحويلات والفيزياء والعرض والمزيد. تتوفر روابط لغات لـ C# و Rust و Zig و Lua و Clojure، يديرها أعضاء المجتمع. المشروع مرخص بموجب MIT، ويتم صيانته بنشاط مع أكثر من 13,000 اختبار في CI، ومدعوم من مجتمع Discord.