أداة إعداد لمشاريع libGDX Gradle.
لإنشاء مشروع، قم بتنزيل أحدث jar
من التطبيق وتشغيله (عادةً ما يؤدي النقر المزدوج إلى ذلك)، أو قم بتشغيل الأمر التالي يدويًا (استبدال VERSION
بشكل مناسب):
java -jar gdx-liftoff-VERSION.jar
يجب عليك الإنشاء باستخدام Java 17 أو الأحدث! يتطلب الإصدار الحالي من Gradle، بالإضافة إلى أدوات Android الحالية، أن يكون JDK المثبت لديك هو الإصدار 17 أو أعلى. بغض النظر عن الأنظمة الأساسية التي تستهدفها، يحتاج Gradle 8.10 والإصدارات الأحدث إلى JDK بإصدار 17 على الأقل! لا يزال بإمكانك استهداف إصدارات أخرى، تصل إلى 8 عادةً، أثناء الإنشاء باستخدام أي من إصدارات JDK الإصدار 17 وما فوق. جميع إصدارات Java المستهدفة المستقرة من 8 إلى 23 تعمل هنا الآن. نحن نستخدم Gradle 8.10.2 لأنه يعمل خارج الصندوق مع Java 23 (على الرغم من أنه تم إصداره للتو!).
إذا واجهت أي مشكلة، يمكنك تجربة "دليل استكشاف الأخطاء وإصلاحها".
بالإضافة إلى معظم ميزات gdx-setup
الأصلي، توفر أداة gdx-liftoff
ما يلي:
قوالب المشروع. يمكنك اختيار واحد من العديد من هياكل المشروع التي تسلط الضوء على ميزات libGDX المتنوعة.
التحقق الفوري من صحة الإدخال. يتم التحقق من صحة بيانات مشروعك أثناء كتابتها.
دعم لغات JVM الأخرى. يمكنك اختيار لغات إضافية لمشروعك، مثل Kotlin أو Scala. سيتم تضمين مكتباتها القياسية ومكونات Gradle الإضافية والمجلدات المصدر المناسبة.
التخصيص. لديك المزيد من التحكم في إصدارات البرامج التي يستخدمها تطبيقك.
المزيد من ملحقات الطرف الثالث. يتم جلب إصداراتها من Maven Central أو JitPack، لذلك يتم تحديث مشروعك دائمًا.
التكوين التلقائي للملحقات الصعبة. إذا كنت تواجه مشكلة في إعداد Artemis-ODB، أو Lombok، أو العديد من المكتبات الأخرى، فإن Liftoff يقوم ببعض الأعمال الإضافية، لذلك لا يتعين عليك القيام بذلك.
دعم التفضيلات. يتم حفظ البيانات الأساسية لتطبيقك، لذلك لا يتعين عليك ملؤها في كل مرة تقوم فيها بإنشاء مشروع.
عداء Gradle اختياري. يمكنك اختياريًا تنفيذ مهام Gradle بعد إنشاء المشروع. ليس من الضروري تشغيل Gradle حتى يتم إنشاء المشروع.
يدعم جميع الواجهات الخلفية لـ libGDX. هل تحتاج إلى الواجهات الخلفية LWJGL2 و/أو LWJGL3 و/أو بدون رأس؟ يوفر Liftoff مربعات اختيار بسيطة لإضافة جميع المنصات الرسمية، بالإضافة إلى بعض الوحدات الخاصة الأخرى.
ميزات الراحة. إذا كان لديك JetBrains Toolbox، فيمكنك فتح مشروع تم إنشاؤه للتو في IDEA بنقرة واحدة (يحتاج إلى تعيين "إنشاء برامج نصية لـ Shell" في Toolbox). إذا كنت تستخدم Eclipse، فلا يزال بإمكانك استيراد مشاريع Gradle بشكل طبيعي.
محدث. يفخر هذا المشروع بالتحديث السريع بعد إصدارات المكونات الخارجية الرئيسية مثل Gradle أو libGDX نفسه.
يتم دعم المزيد من الواجهات الخلفية. لقد كانت الواجهة الخلفية مقطوعة الرأس جزءًا من libGDX لفترة طويلة، ولكن لم يكن من السهل الوصول إليها في إعداد gdx؛ إنها خانة اختيار هنا. TeaVM، وهو بديل شائع بشكل متزايد لـ GWT للتطبيقات المستندة إلى المتصفح، موجود أيضًا هنا، ويعمل مع Kotlin ولغات JVM الأخرى وكذلك مع Java.
أنشئ ملفات تنفيذية أصلية خارج الصندوق. يتيح لك المكون الإضافي Construo تجميع JDK مع JAR الخاص بمشروعك وتشغيله باستخدام Win64 .exe الأصلي، أو MacOS (x64 أو AARCH64) .app، أو Linux x64 القابل للتنفيذ. يتم أيضًا تضمين التكوين لـ Graal Native Image، على الرغم من أنه من غير المرجح أن "يعمل فقط" على الفور.
بالنسبة للفيديو المائل، قام @raeleus بإنتاج هذا الفيديو التعليمي.
إذا كنت تفضل قراءة النص، فإليك ما يلي...
Gdx-Liftoff هو تطبيق واجهة مستخدم رسومية بسيط نسبيًا.
أدخل اسم المشروع/الحزمة/اسم الفئة الرئيسية.
انقر فوق خيارات المشروع.
حدد الخيارات التي تريدها (أنظمة أساسية إضافية، و/أو لغات غير Java، وامتدادات رسمية، و/أو قالب).
انقر فوق التالي.
حدد أي ملحقات تابعة لجهات خارجية تريد إضافتها.
انقر فوق التالي.
أدخل مسار المشروع وقم بتغيير إصدار Java اختياريًا (مثل الإصدار 8 للحصول على دعم أفضل لنظام iOS).
انقر فوق "إنشاء"، ودع السحر يحدث.
بعد ذلك، يمكنك فتح المشروع في المسار الذي حددته، أو فتحه بسرعة أكبر في IDEA إذا تم تثبيته بطريقة يمكن لـ Liftoff رؤيته (باستخدام JetBrains Toolbox، على الأرجح، على الرغم من إمكانية استخدام IDEA المثبتة يدويًا أيضًا).
إذا كنت تريد استخدام Kotlin، فمن المستحسن استخدام قالب Kotlin (مثل Kotlin Logo
)؛ يذكر هؤلاء أنهم يستخدمون "قاذفات Kotlin" في أوصافهم. مكتبات KTX كلها متاحة كامتدادات لجهات خارجية؛ هذه ليست مطلوبة لمشاريع Kotlin، لكنها يمكن أن تكون مفيدة. تحتاج KTX والمكتبات الأخرى المستندة إلى Kotlin إلى تمكين Kotlin. في الوقت الحالي، تستخدم المشاريع التي تم إنشاؤها هنا بشكل افتراضي استخدام Kotlin 2.0.21، والذي قد يكون به بعض حالات عدم التوافق مع الإصدارات السابقة 1.9.x. يمكنك بدلاً من ذلك تعيين الإصدار على الإصدار الأحدث 1.9.x (حاليًا 1.9.25)، في مربع حوار اللغات، عند تحديد Kotlin كخيار. تطالب سلسلة الإصدارات 2.x بعدد من التحسينات الرائعة، ومع ذلك، يبدو أن معظم المكتبات إما قريبة جدًا من التوافق، أو متوافقة بالفعل. تم تصميم Liftoff نفسه باستخدام Kotlin 2.x، بالإضافة إلى كود Java الأساسي (المتوافق مع Java 8).
يتم تنظيم بعض الأشياء بشكل مختلف في مشاريع Liftoff، مقارنةً بمشاريع إعداد gdx. حيث يضع gdx-setup جميع التكوينات تقريبًا في /build.gradle
(في جذر المشروع)، بما في ذلك المشاريع الفرعية مثل android
أو html
، يضع Liftoff التكوينات المشتركة فقط في الجذر build.gradle
، ويحتفظ بجميع معلومات الإصدار القابلة للتكوين بواسطة المستخدم في /gradle.properties
، وينقل التكوين لكل مشروع إلى /core/build.gradle
، /android/build.gradle
، /html/build.gradle
، وما إلى ذلك. يستدعي Liftoff أيضًا المشروع الذي يعتمد على LWJGL3 lwjgl3
، حيث يمكنك أيضًا إنشاء مشروع يعتمد على LWJGL2، ويسمى lwjgl2
. قد تحتاج إلى تغيير المراجع إلى وحدة "سطح المكتب" (كما يستدعي إعداد gdx LWJGL3) إلى lwjgl3
، نظرًا لأن هذه هي وحدة سطح المكتب الأكثر احتمالاً التي ستستخدمها.
إذا كنت تضيف تبعيات إلى ملفات build.gradle، فربما تحتاج إلى إضافتها إلى /core/build.gradle
بدلاً من /build.gradle
في الجذر. قد تحتاج بعض التبعيات أيضًا إلى إضافة أجزاء إلى /lwjgl3/build.gradle
و /html/build.gradle
وما إلى ذلك. إذا طلبت مكتبة إضافة أسطر إلى قسم التبعيات، فهذا يعني دائمًا الكتلة داخل dependencies { }
، ولكن ليس داخل buildscript { }
. غالبًا ما يكون هناك كتلتان من التبعيات، وتريد الكتلة الأخيرة بشكل عام. تتعامل القوالب المحددة في Liftoff مع هذا الأمر تلقائيًا.
لمزيد من التفاصيل حول كيفية استخدام التطبيق وكيفية عمله، راجع دليل الاستخدام. إذا كنت ترغب في المساهمة في المشروع، فقد تجد وثيقة الهندسة المعمارية مفيدة.
عند إرسال طلب سحب، يرجى تنسيق التطبيق باستخدام مهمة ktlintFormat
Gradle.
تم تفرع المشروع من مستودع czyzby/gdx-setup
. أنشأ @czyzby و@kotcrab التطبيق الأصلي، بالإضافة إلى مجموعة من المكتبات التي يعتمد عليها ( gdx-lml
و VisUI
على التوالي). ومنذ ذلك الحين، تتم صيانة المشروع بواسطة @tommyettinger. وبكل لطف، عاد czyzby وقام بإجراء مجموعة واسعة من التحسينات، شكرًا جزيلًا لك! شكرًا أيضًا لـmetaphore، الذي يحتفظ الآن بـ gdx-lml (الذي استخدمه وربما لا يزال يستخدمه).
قام @raeleus بإنشاء مظهر Particle Park لـ scene2d.ui، والذي تم تعديله ليكون المظهر الافتراضي المضاف إلى المشاريع الجديدة (إذا تم تحديد خيار "إنشاء أصول واجهة المستخدم" ). قامت "Accademia di Belle Arti di Urbino وطلاب دورة الماجستير في التصميم المرئي" بإنشاء خط Titillium Web الذي يستخدمه الجلد (بموجب ترخيص SIL OFL). أوه نعم، وقد قام ببعض الأشياء الأخرى بدءًا من الإصدار 1.12.1.10، مثل الإصدار بأكمله تقريبًا . شكرًا جزيلاً لـ raeleus على الإصلاح الشامل لتجربة المستخدم!
من بين المساهمين الآخرين في المشروع @Mr00Anderson و@lyze237 و@metaphore (مرة أخرى!) و@payne911. لا يزال الأشخاص الذين لم يساهموا بشكل مباشر بالكود يساعدون كثيرًا من خلال قضاء وقتهم في الاختبار على منصات مثل macOS وiOS؛ @JojoIce هو واحد من العديد من الأشخاص الذين أحدثوا فرقًا فيما يتعلق بنظام iOS. وبالطبع، شكرًا جزيلاً لجميع المستخدمين الأوائل لتحملهم أي إصدارات تعمل جزئيًا في وقت مبكر!
الرموز العشوائية المقطعة والمستخدمة لمشاريع Android تأتي من مشروع OpenMoji. إذا كنت تريد استخدام هذه الرموز بتنسيق أقل تشوهًا، فهناك openmoji-atlas للوصول إلى هذه الرموز التعبيرية من libGDX بسهولة.
شكرًا أيضًا لكل من قام بإنشاء المكتبات والأدوات المختلفة التي يعتمد عليها برنامج Liftoff. بدءًا من الفريق الضخم المسؤول عن Graal Native Image، ووصولاً إلى Construo بواسطة فريق مكون من شخص واحد تقريبًا، فإن بعض أفضل ميزات Liftoff غير موجودة في كود Liftoff على الإطلاق.
حظا سعيدا، ونأمل أن تفعل شيئا عظيما!