عن المشروع

eepp (Entropia Engine++) هو إطار عمل مفتوح المصدر ومتعدد المنصات بلغة C++ لبناء الألعاب والتطبيقات، مع تركيز قوي على واجهات المستخدم الرسومية الغنية. يستهدف رسميًا أنظمة Linux وWindows وmacOS وFreeBSD وHaiku وAndroid وiOS، ويمكن تصديره إلى HTML5 عبر Emscripten مع بعض القيود. توفر وحدة واجهة المستخدم نظامًا للأدوات القائمة على العقد مع أحداث الإدخال (النقرات، ضغطات المفاتيح، التمرير، التركيز)، والرسوم المتحركة، والتحجيم، والتدوير، والقص، والسمات والجلود، وتدرج كثافة البكسل، وأدوات شائعة مثل الأزرار ومربعات النص ومربعات التحرير والسرد والقوائم ومربعات القوائم وأشرطة التمرير. تشبه التخطيطات نظام Android (LinearLayout وRelativeLayout وGridLayout) ويمكن تحميلها وتنسيقها من XML. يستخدم التنسيق تنفيذًا مخصصًا لأوراق الأنماط المتتالية (CSS) يغطي العديد من قواعد CSS2 بالإضافة إلى ميزات CSS3 مثل الرسوم المتحركة والانتقالات والخصائص المخصصة واستعلامات الوسائط و@font-face. توفر طبقة توافق HTML+CSS عرضًا أصليًا لمستندات HTML عبر مكون UIWebView، وتُستخدم أيضًا لعرض Markdown، مع دعم أوضاع العرض للكتل والعناصر المضمنة والمرنة والشبكة والجداول، وتحديد المواقع، والنص الغني، وأوراق الأنماط المحددة بالمستند. تقدم وحدة الرسومات عارضات OpenGL 2/3 وOpenGL ES 1/2 وCore Profile، وتجميعًا تلقائيًا، ودعم خطوط TrueType/BMFont/XNA، ومخازن الإطارات، والتظليل، وVBOs، والجسيمات، والصور المتحركة، وأطالس النسيج مع محرر، وأقنعة القص، وخرائط البت ذات التسعة أجزاء، والعديد من تنسيقات الصور بما في ذلك SVG المعالج. تعتمد وحدة النوافذ على خلفية (حاليًا SDL2) وتتعامل مع الحافظة والمؤشرات المادية والشاشات وعصي التحكم. يستخدم الصوت OpenAL (مع mojoAL كافتراضي بديل) ويدعم OGG وWAV وMP3 وFLAC. تغطي الوحدات الأخرى الخيوط ونظام ملفات افتراضيًا وإدارة الذاكرة ومعالجة سلاسل UTF وأدوات الرياضيات وشبكات HTTP/FTP مع TLS ونظام مشاهد قائم على العقد ووحدات اختيارية لفيزياء Chipmunk وخرائط Tiled. تشمل الأدوات المرفقة محرر واجهة مستخدم مع معاينة مباشرة للتخطيط/CSS، ومحرر أطالس نسيج، ومحرر خرائط ثنائية الأبعاد. يتضمن المشروع أمثلة واختبارات وتنفيذات معيار 7GUIs. يتطلب البناء SDL2 وpremake4/premake5 لتوليد ملفات Makefiles أو مشاريع IDE؛ تُعطى تعليمات خاصة بالمنصة لأنظمة Linux وWindows (Visual Studio أو MinGW/w64devkit) وmacOS (Makefiles أو Xcode) وAndroid (Gradle) وiOS. الوثائق مكتملة جزئيًا، مع حصول وحدة واجهة المستخدم على أكبر قدر من الاهتمام.