مجموعة من مكتبات C/C ++ لتطوير اللعبة
- نظام
- قاعدة
- الرياضيات
- وينتهي/المدخلات
- الخيوط
- مخصصات الذاكرة
- سيم
- تصحيح الأخطاء
- نظام إضافي/انعكاس
- التسلسل
- مكونات المحرك
- تقديم
- صوتي
- الشبكات
- البرمجة النصية
- واجهة المستخدم
- ECS
- الرسوم المتحركة / المشهد
- الفيزياء
- باثفوفنغ
- قاعدة البيانات
- إدارة الأصول
- الشبكات/الهندسة
- يعالج
- المستوردون/المصدرون
- الملمس الخبز/التعبئة
- الأطر
نظام
قاعدة
| ليب | عنوان |
|---|
| bkaradzic/bx | مكتبة قاعدة |
| Septag/SX | مكتبة قاعدة محمولة لمبرمجي C ، مصممة خصيصًا للأداء والبساطة |
| Nothings/STB | مكتبات المجال العام STB ملف واحد لـ C/C ++ |
| Randygaul/cute_headers | مكتبات C/C ++ واحدة مع عدم وجود تبعيات ، تستخدم في المقام الأول للألعاب |
| فورتون/MMX | مكتبات رأس واحدة لـ C/C ++ |
| ZPL-C/ZPL | الخاص بك C99 PowerKit |
| Niklas-ourmachinery/bitsquid-foundation | مكتبة الأساس الحد الأدنى مع وظائف لتخصيص الذاكرة ، والمجموعات الأساسية ، وما إلى ذلك. تمت كتابة المكتبة بفلسفة موجهة للبيانات: تفضل هياكل POD على الفئات ، المصفوفات المسطحة هي بنية البيانات المفضلة ، إلخ. |
الرياضيات
| ليب | عنوان |
|---|
| hypatia | Pure C Math Library 2D/3D Graphics. تسعى إلى أن تكون قريبة من C89/C90 متوافقة مع قابلية النقل. |
| G-TRUC/GLM | OpenGL الرياضيات (GLM) |
| recp/cglm | OpenGL/Graphics Math (GLM) من أجل C. |
| Google/Mathfu | تم تطوير مكتبة C ++ للرياضيات بشكل أساسي للألعاب التي تركز على البساطة والكفاءة. |
| Ferreiradaselva/Mathc | مكتبة الرياضيات النقية للبرمجة ثنائية الأبعاد و 3D |
| Demianmnave/CML | مكتبة الرياضيات القابلة للتكوين http://cmldev.net |
| SCE_VECTORMATH | مكتبة الرياضيات ناقلات |
| أنا | أنا |
| مصنوعة يدويا | مكتبة رياضيات بسيطة للألعاب ورسومات الكمبيوتر. |
| Felselva/Mathc | مكتبة الرياضيات النقية للبرمجة 2D و 3D. |
| PX4/Eigen | EIGEN هي مكتبة قالب C ++ للجبر الخطي: المصفوفات ، المتجهات ، الحلول العددية ، والخوارزميات ذات الصلة. http://eigen.tuxfamily.org/ |
| laze-lib/blaze | Blaze هي مكتبة الرياضيات C ++ ذات المصدر المفتوح للحساب الكثيف والتفريخ. |
| sgorsten/linalg | Linalg.H هي مكتبة الجبر الخطي المجال العام واحد لـ C ++ 11 |
وينتهي/المدخلات
| ليب | عنوان |
|---|
| SDL | طبقة مبدئية بسيطة |
| SFML | مكتبة وسائط متعددة بسيطة وسريعة |
| GLFW | مكتبة متعددة المنصات |
| Gainput | مكتبة إدخال C ++ للألعاب |
| wgois/ois | نظام الإدخال الموجهة نحو الكائن https://wgois.github.io/ois/ |
| Ziacko/tinywindow | مكتبة نافذة OpenGL منصة (Linux و Windows) في رأس واحد |
| Nyorain/NY | حديثة C ++ تجريد النوافذ عبر المنصات |
الخيوط
| ليب | عنوان |
|---|
| rhoot/sc | مكتبة Cross Platform Co-Routine مكشوفة من خلال الحد الأدنى من C API |
| DeBoost.Context | إصدار "تم إعادة تمويل" من Boost.Context (coroutines) ، و API C العادي والبسيط لتبديل السياق. سهلة البناء على منصات متعددة. |
| سيرجايمزيف/تاسكشيدولير | تجارب جدولة المهام متعددة مؤشرات الترابط |
| Dougbinks/enkits | جدولة مهمة C ++ و C Multithreading |
| Freeaky/الألياف-Job-system | نظام عمل متعدد الخيوط باستخدام الألياف |
| Richiesams/fibertaskinglib | مكتبة لتمكين المهام المتعددة القائم على المهام. يسمح بتنفيذ الرسوم البيانية المهمة مع تبعيات تعسفية. |
| Jodithetigger/الخياطة | Small C API Multiplatform Multithedform Multureded Multiredible |
| pithikos/c-throd-pool | تجمع خيوط ضئيل ولكنه قوي في ANSI C. |
| mbrossard/threadpool | تطبيق تجمع الخيوط البسيط C. |
| tinycthread/tinycthread | التنفيذ الصغير المحمول لآبار واجهة برمجة تطبيقات مؤشرات الترابط C11 |
| Yohhoy/الموضوع | C11 <froofs.h> مكتبة مضاهاة |
مخصصات الذاكرة
| ليب | عنوان |
|---|
| mtrebi/الذاكرة المتسابقين | مخصصات الذاكرة المخصصة في C ++ لتحسين أداء تخصيص الذاكرة الديناميكية |
| فوناثان/الذاكرة | مكتبة مخصصة الذاكرة C ++ المتوافقة مع STL باستخدام مفهوم RawAllocator جديد يشبه المخصص ولكنه أسهل في الاستخدام والكتابة. http://foonathan.net/doc/memory |
| سيرجيمييف/smmalloc | تخصيص الذاكرة السريعة المصممة لألعاب الفيديو |
| البلازما أووماس/شبكة | مخصص الذاكرة الذي يقلل تلقائيًا بصمة الذاكرة لتطبيقات C/C ++. |
| RampantPixels/rpmalloc | قفل المجال العام عبر منصة مؤشر ترابط مجاني للتخزين المؤقت 32 بايت محاذاة مخصصة للذاكرة المنفذة في ج |
| Microsoft/Mimalloc | تخصيص الغرض العام مع خصائص الأداء الممتازة. |
سيم
| ليب | عنوان |
|---|
| p12tic/libsimdpp | رأس محمولة فقط Zero-Operhead C ++ مكتبة SIMD منخفضة المستوى |
| VCDevel/VC | فئات ناقلات SIMD لـ C ++ |
| Nemequ/Simde | تنفيذ مجموعات تعليمات SIMD للأنظمة التي لا تدعمها أصلاً. |
| xtensor-stack/xsimd | أغلفة C ++ للأوان SIMD والوظائف الرياضية المحسنة والمحسّنة (SSE ، AVX ، NEON ، AVX512) |
تصحيح الأخطاء
| ليب | عنوان |
|---|
| rxi/log.c | مكتبة تسجيل بسيطة تم تنفيذها في C99 |
| spdlog | FAST C ++ Logging Library. |
| easy_profiler | مكتبة البروفيلر خفيفة الوزن لـ C ++ |
| كروساير/وميض | أداة تتيح لك تحرير رمز المصدر لأي مشروع Windows C ++ Live في وقت التشغيل |
| ddovod/jet-live | C ++ إعادة تحميل الرمز الساخن لـ Linux و MacOS |
| RRZE-HPC/Likwid | مجموعة مراقبة الأداء وقياسها |
نظام إضافي/انعكاس
| ليب | عنوان |
|---|
| الفطريات/كر | CR.H: مكتبة RELOAD ALDER SIMPLE C SIME |
| manu343726/ctti | ترجمة معلومات نوع الوقت لـ C ++ |
التسلسل
| ليب | عنوان |
|---|
| Felixguendling/Cista | بسيطة C ++ التسلسل والانعكاس. https://cista.rocks |
| msgpack/msgpack-c | تطبيق MessagePack لـ C و C ++ |
| sheredom/json.h | JSON Parser لـ C و C ++ |
مكونات المحرك
تقديم
| ليب | عنوان |
|---|
| bkaradzic/bgfx | عبر المنصات ، رسومات واجهة برمجة تطبيقات API ، "أحضر مكتبة عرض المحرك/الإطار" الخاص بك. |
| floooh/sokol | الحد الأدنى من الرؤوس المستقلة للمنصة |
| المجففة/الجدانة | مكتبة رسومات ثلاثية الأبعاد ذات المستوى 3D الحديثة منصة تدعم Direct3D11 و Direct3D12 و OpenGL/GLES و Vulkan والمعادن |
| كود/كور | مكتبة ألعاب منخفضة المستوى الحديثة وتجريد الأجهزة |
| جوجل/خيوط | Filament هو محرك عرض جسدي في الوقت الفعلي لنظام Android و Windows و Linux و MacOS |
| FNA-XNA/FNA3D | مكتبة الرسومات ثلاثية الأبعاد لـ FNA |
| GRZ0ZRG/FBG | مكتبة API خفيفة الوزن C 2D API مع دعم التوازي |
| Cofenberg/unimp | تنفيذ العارض الموحد ("un r imp") |
| doitsujin/dxvk | تنفيذ D3D11 و D3D10 المستند إلى Vulkan |
| PPPLUX/PX | مكتبات رأس واحدة C ++ لجدولة مؤشرات الترابط ، التقديم |
| إنتل/fastuidraw | المكتبة التي توفر واجهة قماش أعلى أداء |
| v-ez | V-EZ عبارة عن غلاف مفتوح المصدر وعبر المنصات (Windows و Linux) يهدف إلى تخفيف التعقيد المتأصل ومسؤولية التطبيق لاستخدام واجهة برمجة تطبيقات Vulkan. |
| ssloy/tinyrenderer | دورة رسومات حاسوبية موجزة / دورة عرض |
| nicebyte/nicegraf | طبقة التجريد لواجهة برمجة تطبيقات الرسومات الخاصة بالمنصة منخفضة المستوى. |
| DR-SOFT/GLBIND | ملف واحد OpenGL API Loader. |
| DR-SOFT/VKBIND | ملف واحد Fulkan API Loader. |
| Lukasbanana/LLGL | مكتبة الرسومات ذات المستوى المنخفض (LLGL) هي طبقة تجريدية رقيقة لآبار واجهات برمجة تطبيقات الرسومات الحديثة ، و direct3d ، و vulkan ، والمعادن |
| Zauonlok/العارض | عارض برامج قائم على التظليل مكتوب من نقطة الصفر في C89 |
| زيوكس/نياجرا | عارض فولكان مكتوب من الصفر على تيار |
صوتي
| ليب | عنوان |
|---|
| منفتح | تنفيذ البرمجيات لواجهة برمجة تطبيقات الصوت 3D Openal |
| FNA-XNA/Faudio | فوديو - تعويض Xaudio الذي يركز على الدقة للمنصات المفتوحة |
| سولود | محرك صوت مجاني وسهل ومحمول للألعاب |
| pherose/atomix | مكتبة خلط ذرية محمولة وملف واحد وخالي من الانتظار باستخدام خلط مقلع SSE |
| DR-SOFT/miniaudio | تشغيل مكتبة وتشغيل صوت ملف واحد |
| Portaudio | Portaudio هي مكتبة مجانية وعبر منصات أو مفتوحة المصدر ، صوتي |
| الرنين | ارتفاع الإخلاص المكاني الصوت على نطاق واسع. |
الشبكات
| ليب | عنوان |
|---|
| مكتبة | مكتبة شبكات الألعاب النقية C99 |
| bkaradzic/bnet | مكتبة الشبكات الموجهة للرسائل باستخدام TCP Transport |
| ZEROMQ/LIBZMQ | Zeromq Core Engine في C ++ ، ينفذ ZMTP/3.1 http://www.zeromq.org |
| RXI/DYAD | الشبكات غير المتزامنة لـ C. |
| Lsalzman/enet | ENET مكتبة شبكات UDP موثوقة |
| Jarikomppa/IPC | المجال العام ، منصة متقاطعة ، برامج اتصال بين العمليات الفردية. هذه هي مكتبة "STB مثل" STB "مكتبة C/C ++" STB فقط والتي توفر وظائف الاتصال بين العملية ، والتي تم إصدارها تحت Unlisense. |
| Valvesoftware/gamenetworkingsockets | رسائل موثوقة وغير موثوقة على UDP. تفتت الرسائل القوية وإعادة التجميع. التشفير. |
| jeremycw/httpserver.h | مكتبة رأس واحدة لكتابة خوادم HTTP غير المحصورة في ج |
البرمجة النصية
| ليب | عنوان |
|---|
| Svaarala/duktape | Duktape - محرك JavaScript القابل للتضمين مع التركيز على قابلية النقل والبصمة المدمجة |
| Gaijinenturness/dascript | DASCRIPT - لغة البرمجة النصية ذات الأداء العالي القوي بشكل ثابت https://dascript.org |
واجهة المستخدم
| ليب | عنوان |
|---|
| OCORNUT/IMGUI | عزيزي Imgui: واجهة مستخدم رسومية خالية من الفتحة الخالية |
| فورتون/nuklear | مكتبة ANSI C GUI واحدة من الرأس |
| andlabs/libui | مكتبة واجهة المستخدم الرسومية بسيطة ومحمولة (ولكن ليس غير مرنة) في C والتي تستخدم تقنيات واجهة المستخدم الرسومية الأصلية لكل منصة تدعمها |
| RXI/microui | مكتبة واجهة مستخدم صغيرة الوضع الفوري |
| جوليانزل/BWIDGETS | مجموعة أدوات أداة واجهة المستخدم الأساسية المصممة للخلاط |
| Idea4good/guilite | أصغر إطار واجهة المستخدم لجميع منصة و Docker - كود 5K خطوط |
| Littlevgl/LVGL | مكتبة الرسومات لإنشاء واجهة المستخدم الرسومية المدمجة مع عناصر رسومية سهلة الاستخدام |
| wjakob/nanogui | مكتبة واجهة المستخدم الرسومية الحد الأدنى لـ OpenGL |
| Randrew/Layout | مكتبة ملف واحد لحساب تخطيطات واجهة المستخدم ثنائية الأبعاد باستخدام مربعات التراص. يجمع كـ C99 أو C ++. |
| mikke89/rmlui | حزمة واجهة مستخدم C ++ استنادًا إلى معايير HTML و CSS |
ECS
| ليب | عنوان |
|---|
| Skypjack/entt | نظام مكون سريع وموثوق به (ECS) وأكثر من ذلك بكثير |
| REDXDEV/ECS | C ++ مكتبة نظام Componn |
| Alecthomas/entityx | Entityx-نظام مكون من نوع C ++ سريع الآمن من النوع |
| تغيير الرسوم المتحركة/ديانا | نظام مكون الكيان مثل Artemis المنفذ في C |
| Sandermertens/reflecs | نظام مكونات الكيان متعدد مؤشرات الترابط المكتوب في C99 |
الرسوم المتحركة / المشهد
| ليب | عنوان |
|---|
| Buserror/libc3 | مكتبة الرسم البياني للتقليص الخفيفة الوزن C |
| Guillaumeblanc/Ozz | مفتوح المصدر C ++ مكتبة الرسوم المتحركة الهيكلية وجماعة الأدوات |
| جوجل/الدافع | نظام الرسوم المتحركة المتقاطع ، وفعال الذاكرة ، ونظام الرسوم المتحركة المكتوبة في C ++ |
الفيزياء
| ليب | عنوان |
|---|
| nvidiagameworks/physx | nvidia physx sdk 4 |
| Bulletphysics/Bullet3 | فيزياء الرصاص SDK: اكتشاف التصادم في الوقت الفعلي ومحاكاة الفيزياء المتعددة لـ VR ، والألعاب ، والتأثيرات البصرية ، والروبوتات ، والتعلم الآلي ، إلخ. |
| Chriscamacho/bulletcapi | C API لفيزياء الرصاص |
| Madeapps/Newton-Dynamics | Newton Dynamics هو حل متكامل للمحاكاة في الوقت الحقيقي لبيئات الفيزياء. http://www.newtondynamics.com |
| erincatto/box2d | Box2D هو محرك فيزياء ثنائي الأبعاد للألعاب http://box2d.org |
| Chipmunk2d | مكتبة فيزياء اللعبة السريعة والخفيفة الوزن. |
| GJK.C | Gilbert-Johnson-Keerthi (GJK) خوارزمية اكتشاف الاصطدام |
| PHYX | محرك الفيزياء ثنائي الأبعاد مع تحسينات الخدمية/SIMD |
| Playrho | محرك ومكتبة الفيزياء الموجهة نحو الوقت الفعلي والتي تعد حاليًا الأنسب للألعاب ثنائية الأبعاد |
| الموضع baseddynamics | الموضع baseddynamics هي مكتبة للمحاكاة الجسدية للأجسام الصلبة والمواد الصلبة والسوائل المشوهة |
| دفع | مكتبة صغيرة من الجسم ثلاثية الأبعاد الموجه للبيانات والمحسّنة SIMD. |
| الجسيمات | تطبيقات وحدة المعالجة المركزية و GPU للفيزياء القائمة على الجسيمات |
باثفوفنغ
| ليب | عنوان |
|---|
| JPs | البحث عن نقطة القفز ، المجال العام ، واحد .H (السوبر السريع في الشبكات الموحدة) |
| Astar-algorithm-CPP | تطبيقات خوارزمية A* في C ++ و C# |
| micropather | A* Solver (Astar أو A-Star) مكتوبة في منصة C ++ مستقلة |
| recastnavigation | مجموعة أدوات عرض الملاحة للألعاب |
قاعدة البيانات
| ليب | عنوان |
|---|
| Symisc/unqlite | محرك قاعدة بيانات NOSQL المضمنة |
| FNC12/SQLITE_ORM | SQLite ORM Light Header فقط مكتبة فقط لـ C ++ الحديثة |
إدارة الأصول
الشبكات/الهندسة
يعالج
| ليب | عنوان |
|---|
| libigl | مكتبة معالجة هندسية بسيطة C ++ |
| Mathgeolib | مكتبة لجبر خطي ومعالجة هندسية لرسومات الكمبيوتر |
| sseculling | SSE Frustum Demo Demo |
| cullminator9000 | أسرع كولر على الإطلاق |
| SeamawareDecimater | تبسيط شبكة مع حدود الأشعة فوق البنفسجية |
| زيوكس/meshoptimizer | مكتبة تحسين الشبكات التي تجعل الشبكات المفهرسة أكثر ملائمة GPU |
| جوجل/دراكو | Draco هي مكتبة لضغط وإزالة ضغط الشبكات الهندسية ثلاثية الأبعاد والغيوم النقطة. يهدف إلى تحسين تخزين ونقل الرسومات ثلاثية الأبعاد. |
المستوردون/المصدرون
| ليب | عنوان |
|---|
| Assimpt | مستودع مكتبة استيراد الأصول المفتوحة الرسمية. يحمل 40+ تنسيقات ملفات ثلاثية الأبعاد في بنية بيانات موحدة ونظيفة واحدة |
| NEM0/OpenFBX | مستورد FBX مفتوح المصدر خفيف الوزن |
| Syoyo/tinyobjloader | القليل من ملفات الموجة الواجهة الواجهة الواجهة الواجهة الواجهة |
| Syoyo/tinygltf | رأس فقط C ++ Tiny GLTF 2.0 Loader. |
| jkuhlmann/cgltf | ملف واحد GLTF 2.0 محلل مكتوب في C99 |
| Microsoft/GLTF-SDK | GLTF-SDK هي مجموعة تطوير البرمجيات C ++ لـ GLTF |
| FacebookinCubator/FBX2GLTF | أداة سطر الأوامر لتحويل أصول النماذج ثلاثية الأبعاد على تنسيق ملف FBX إلى تنسيق ملف GLTF. |
الملمس الخبز/التعبئة
| ليب | عنوان |
|---|
| binomialllc/riser_universal | أساس برنامج GPU GPU العالمي برمز الملمس |
| caosdoar/fornos | أداة GPU نسيج الخبز. أداة سريعة وبسيطة لخبز تفاصيل شبكة الشبكة العالية إلى القوام. |
| Kmkolasinski/AwesomeBump | AwesomeBump تولي |
| Dariomanesku/cmft | أداة تصفية خط الأوامر عبر المنصات مفتوحة المصدر |
| الفهود الفهود | أداة تعبئة صندوق ثنائية الأبعاد عالية الكفاءة وسريعة |
| thekla_atlas | أداة توليد أطلس |
| libvips | مكتبة معالجة الصور السريعة ذات احتياجات الذاكرة المنخفضة |
الأطر
| ليب | عنوان |
|---|
| GameFoundry/BSF | مكتبة C ++ 14 الحديثة لتطوير التطبيقات الرسومية في الوقت الفعلي https://www.bsframework.io |
| رايلب | مكتبة بسيطة وسهلة الاستخدام للاستمتاع برمجة ألعاب الفيديو http://www.raylib.com |
| floooh/oryol | إطار تشفير C ++ ثلاثي الأبعاد صغير ومحمول وقابل للتمديد |
| حلويات/ذا فورج | PC Forge Cross-Platform Rendering Framework PC ، Linux ، Ray Tracing ، MacOS / IOS ، Android ، Xbox ، PS4 |
| موسرا/ماغنوم | خفيفة الوزن ومعيار C ++ 11/C ++ 14 الوسيطة للألعاب وتصور البيانات |