عن المشروع
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.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.