محاكي المطوّرين لبرنامج "ألعاب Google Play على الكمبيوتر" هو محاكي موجّه للمطوّرين لتطبيق "ألعاب Google Play على الكمبيوتر". على عكس تجربة المشغّل، يمكنك تثبيت حِزمك الخاصة و تصحيح أخطاءها. يمكنك أيضًا محاكاة إعدادات مختلفة للّاعبين مثل نسبة العرض إلى الارتفاع ومحاكاة الماوس وخلفية الرسومات لمساعدتك في ضمان أداء لعبتك على النحو المتوقّع على مختلف إعدادات الكمبيوتر الشخصي.
بدء تشغيل المحاكي
بعد التثبيت، سيظهر لك عنصر "محاكي مطوّري ألعاب Google Play" في قائمة بدء واختصار على سطح المكتب لتشغيل المحاكي. سيظل المحاكي مستقرًا في علبة النظام عند إغلاق النافذة.
تسجيل الدخول
سيُطلب منك تسجيل الدخول إلى حسابك على Google في المرة الأولى التي تشغّل فيها المحاكي. استخدِم بيانات اعتماد تسجيل الدخول نفسها التي تخطّط لاستخدامها في عملية التطوير.
يمكنك تسجيل الخروج من خلال النقر بزر الماوس الأيمن على رمز علبة النظام، واختيار خيارات developer (المطوّر) ، ثم النقر على Force sign out (فرض تسجيل الخروج). عند إجراء ذلك، تتم إعادة تشغيل المحاكي على الفور ويطلب منك تسجيل الدخول مرة أخرى.
التنقّل
بعد التشغيل، ستظهر لك شاشة Android الرئيسية المعتادة. يتم تحويل نقرات الماوس الأيسر مباشرةً إلى نقرات الأصابع كما هو الحال في وضع محاكاة الماوس. تظهر الألعاب التي تم تثبيتها من مصدر غير معروف لأغراض التطوير في قائمة التطبيقات التي يمكنك الوصول إليها بالنقر عليها وسحبها للأعلى على الكمبيوتر المكتبي (محاكاة التمرير سريعًا للأعلى على الهاتف أو الجهاز اللوحي).
بالإضافة إلى ترجمة الماوس، يقدّم محاكي المطوّرين لبرنامج "ألعاب Google Play على الكمبيوتر" اختصارات لوحة المفاتيح لتحسين التنقّل:
ctrl + h : الضغط على زر الصفحة الرئيسيةctrl + b : الضغط على زر الرجوعF11 أوAlt + Enter : للتبديل بين وضع ملء الشاشة و وضع النافذةshift + tab : فتح تراكب Google Play Games على الكمبيوتر، بما في ذلك عمليات ربط المفاتيح الحالية لحزمة تطوير البرامج (SDK) الخاصة بإدخال البيانات
تثبيت لعبة
يستخدم محاكي "ألعاب Google Play على الكمبيوتر" للمطوّرين Android Debug Bridge (adb) ل تثبيت الحِزم.
توافق adb
إنّ الإصدارات الحالية من adb
متوافقة مع محاكي المطوّرين لبرنامج "ألعاب Google Play على الكمبيوتر".
بالإضافة إلى ذلك، يتم تثبيت إصدار متوافق في C:\Program
Files\Google\Play Games Developer Emulator\current\emulator
عند تثبيت
المحاكي.
اتّباع هذه التعليمات يتطلّب توفّر أداة adb في $PATH
. يمكنك
التحقّق من ضبط adb
بشكل صحيح باستخدام الأمر adb devices
.
adb devices
List of devices attached
localhost:6520 device
تثبيت اللعبة
- تشغيل
Google Play Games for PC Emulator
اكتب
adb devices
في موجّه الأوامر. من المفترض أن يظهر لك ما يلي:adb devices List of devices attached localhost:6520 device
استكشاف المشاكل وإصلاحها:
- إذا ظهرت لك رسالة خطأ، تأكَّد من اتّباع التعليمات الواردة في مقالة توافق Adb.
- إذا لم يظهر لك أي جهاز، حاوِل إعادة الاتصال من خلال المنفذ
6520
:
adb connect localhost:6520
اكتب
adb install path\to\your\game.apk
لتثبيت لعبتك. إذا سبق أن أنشأت مجموعة حزمات تطبيق Android (aab)، اطّلِع على تعليمات استخدام bundletool واستخدِمbundletool install-apks
بدلاً من ذلك.يمكنك تشغيل لعبتك من خلال:
- اكتب
adb shell monkey -p your.package.name 1
لتشغيل لعبتك، مع استبدالyour.package.name
باسم حزمة لعبتك. - في محاكي "ألعاب Google Play على الكمبيوتر" المخصّص للمطوّرين، انقر على الرمز لتشغيل لعبتك. تمامًا كما هو الحال على هاتف Android، عليك التمرير سريعًا للأعلى على الشاشة الرئيسية للاطّلاع على قائمة الألعاب المثبّتة.
- اكتب
تصحيح أخطاء لعبة
استخدِم Android Debug Bridge (adb) لتصحيح الأخطاء كما تفعل مع أي لعبة أخرى.
يظهر المحاكي كجهاز متصل عبر localhost:6520
.
تعمل adb logcat
على النحو المتوقّع، وكذلك الأدوات التي تساعد في تجميل أو فلترة
مخرجات logcat، بما في ذلك Android Studio.
بالإضافة إلى adb
، يمكن الوصول إلى السجلات في دليل
%LOCALAPPDATA%\Google\Play Games Developer Emulator\Logs
. إنّ العنصر الأكثر
فائدة هنا هو AndroidSerial.log
الذي يمثّل كل ما adb logcat
يُعاد من لحظة بدء المحاكي.
إعدادات مطوّر البرامج
يركز محاكي "ألعاب Google Play على الكمبيوتر" المخصّص للمطوّرين على كفاءة المطوّرين بدلاً من تجربة المستخدم النهائي. وهذا يعني أنّه يمكنك الوصول بسهولة إلى نظام Android، بما في ذلك استخدام مشغّل Android العادي بدلاً من تجربة "ألعاب Google Play على الكمبيوتر"، ويمكنك التحكّم في الميزات التي يتم تفعيلها أو إيقافها تلقائيًا للّاعبين.
اختبار الإدخال باستخدام الماوس
أثناء التطوير، يتم ضبط محاكي "ألعاب Google Play على الكمبيوتر" للمطوّرين تلقائيًا على محاكاة اللمس بدلاً من السماح لك بإدخال الماوس مباشرةً. يمكنك تفعيل إدخال الماوس المباشر من خلال النقر بزر الماوس الأيمن على رمز علبة النظام، واختيار خيارات المطوّر، ثم وضع الكمبيوتر الشخصي (KiwiMouse).
يتضمّن تطبيق "ألعاب Google Play على الكمبيوتر" وضعَين للماوس: وضع محاكاة يحوّل نقرات الماوس إلى نقرات واحدة و"وضع الكمبيوتر" الذي يتيح للألعاب معالجة إجراءات الماوس بشكلٍ أصلي وتنفيذ التقاط المؤشر. لمعرفة تفاصيل عن استخدام الماوس في "ألعاب Google Play على الكمبيوتر"، يُرجى الاطّلاع على مقالة إعداد استخدام الماوس.
في برنامج تشغيل الوسائط، يتم إيقاف المحاكاة عن طريق إضافة ما يلي إلى البيان:
<manifest ...>
<uses-feature
android:name="android.hardware.type.pc"
android:required="false" />
...
</manifest>
لا يكون لهذه العلامة المرجعية للميزة أي تأثير في بيئة التطوير.
اختبار نِسب العرض إلى الارتفاع
يتم تشغيل محاكي المطوّر بنسبة عرض إلى ارتفاع 16:9، على عكس العميل للاعب الذي يستمد نسبة العرض إلى الارتفاع من الشاشة الأساسية. يمكنك اختبار مظهر اللعبة على مختلف الشاشات من خلال النقر بزر الماوس الأيمن على رمز علبة النظام واختيار خيارات المطوّر ثم أي خيار في قسم نسبة العرض إلى الارتفاع.
الطريقة المفضّلة لضبط نسبة العرض إلى الارتفاع هي استخدام android:minAspectRatio
وandroid:maxAspectRatio
.
على سبيل المثال،
تكون نسبة العرض إلى الارتفاع للعبة بشاشة عمودية هي 9/16
أو 0.5625
، لذا قد تحتاج إلى
ضبط الحد الأقصى لنسبة العرض إلى الارتفاع على 1
لمنع عرض اللعبة على شاشة أعرض من المربّع:
<activity android:maxAspectRatio="1">
...
</activity>
وبالمثل، تكون نسبة العرض إلى الارتفاع للعبة أفقية 16/9
أو 1.778
تقريبًا، لذا ننصحك
بتحديد نسبة عرض إلى ارتفاع لا تقل عن 1
لمنع ظهورها بشكل أطول من عرضها:
<activity android:minAspectRatio="1">
...
</activity>
ما يجب اختباره
إذا كانت لعبتك تتيح الوضع العمودي فقط في البيان، يمكنك اختيار 9:16 (عمودي) في القائمة المنسدلة لمعرفة شكلها على أجهزة الكمبيوتر الشخصي الخاصة باللاعبين. بخلاف ذلك، تحقّق من أنّ لعبتك تعمل بنسب العرض إلى الارتفاع الأوسع والأضيق التي تتيحها في البيان، مع العلم أنّ 16:9 (تلقائي) (أو 9:16 (عمودي) إذا كانت لعبتك عمودية فقط) مطلوب للحصول على شهادة الاعتماد الكاملة.
اختبار الخلفيات لعرض المحتوى
يستخدم تطبيق "ألعاب Google Play على الكمبيوتر" مكتبة Vulkan لعرض ألعابك، وهي مكتبة شائعة في كل من بيئة Android وبيئة الكمبيوتر. تُستخدَم طبقة وضع الحماية لعزل بيئة الكمبيوتر الشخصي وبيئة Android. بما أنّ العديد من الألعاب لا تزال تستخدم OpenGL ES للعرض، ستحول ANGLE أوامر OpenGL ES إلى أوامر Vulkan متوافقة مع الكمبيوتر المضيف.
وبالمثل، يعمل برنامج "ألعاب Google Play على الكمبيوتر" على زيادة توافق الألعاب إلى أقصى حدّ وخفض جهد المطوّرين إلى أدنى حدّ من خلال تحويل تنسيقات النسيج المتوافقة مع الأجهزة الجوّالة تلقائيًا، مثل ETC1 وETC2، إلى تنسيقات متوافقة مع أجهزة الكمبيوتر الشخصي أثناء التشغيل. للحصول على أفضل النتائج، تجنَّب هذا التحويل من خلال استخدام التنسيقات المتوافقة مع وحدات معالجة الرسومات في أجهزة الكمبيوتر الشخصي، مثل DXTC أو BPTC.
ما يجب اختباره
إذا كانت لعبتك تواجه عناصر عرض غير متوقّعة، عليك فحص رسومات المصدر والتفكير في استخدام تنسيق متوافق مع أجهزة الكمبيوتر. انتبِه جيدًا إلى المواد التي يتم استخدامها لتأثيرات أكثر تقدمًا، لأنّه غالبًا ما يكون من الصعوبة التعرّف على مشاكل الخريطة العادية أو الخريطة المكعبة مقارنةً بمشاكل السطوع.
سيؤدي تحويل ANGLE لطلبات OpenGL ES إلى Vulkan إلى زيادة بعض النفقات العامة. تأكَّد من أنّك تحقّق من أهداف الأداء المتوقّعة، وفكِّر في التبديل إلى أداة عرض رسومات مستندة إلى Vulkan.
إنشاء ملف شخصي للعبة الكمبيوتر
وبما أنّ المحاكي يستخدم التكنولوجيا نفسها المستخدَمة في برنامج تشغيل المستهلك، فهو يمثّل بيئة مناسبة لتحليل الأداء.
Perfetto هي أداة لتحليل الأداء على Android. يمكنك جمع أثر Perfetto و عرضه باتّباع الخطوات التالية:
في طلب PowerShell، ابدأ عملية تتبُّع باستخدام
adb
.adb shell perfetto --time 10s gfx wm sched --out /data/misc/perfetto-traces/example.trace
- يحدِّد الرمز
--time
مدة التتبُّع المطلوب جمعها. في هذا المثال، تبلغ مدة التتبّع 10 ثوانٍ. - تشير الوسيطات بعد العلامة
--time
إلى الأحداث التي يجب تتبُّعها. في هذا المثال، يشيرgfx
إلى الرسومات وwm
إدارة النوافذ وsched
معلومات جدولة العمليات. هذه هي الإشعارات الشائعة لتحليل ملف تعريف الألعاب، وتتوفّر مرجع كامل. - تحدِّد العلامة
--out
ملف الإخراج الذي يتم سحبه من المحاكي إلى الجهاز المضيف في الخطوة التالية.
- يحدِّد الرمز
سحب التتبُّع من المضيف
adb pull /data/misc/perfetto-traces/example.trace $HOME/Downloads/example.trace
افتح عملية التتبُّع في واجهة مستخدم Perfetto.
- افتح ui.perfetto.dev.
- انقر على فتح ملف التتبّع من أعلى يمين الصفحة ضمن التنقّل.
- افتح ملف
example.trace
الذي نزّلته في الخطوة السابقة في الدليلDownloads/
.
راجِع التتبُّع في واجهة مستخدم Perfetto. في ما يلي بعض الملاحظات المفيدة:
- لكل عملية صف خاص بها، ويمكن توسيعه لعرض جميع سلاسل المحادثات في تلك العملية. إذا كنت بصدد إنشاء ملف شخصي للعبة، من المرجّح أن تكون العملية هي الصف الأول.
- يمكنك تكبير المحتوى وتصغيره عن طريق الضغط مع الاستمرار على مفتاح Control واستخدام عجلة التمرير.
- عند استخدام الحدث
sched
، يظهر صف لكل سلسلة محادثات يعرض حالة هذه السلسلة، سواء كانت قيد التنفيذ أو قابلة للتنفيذ أو في وضع السكون أو محظورة. - عند تفعيل حدث مثل
gfx
، يمكنك الاطّلاع على مختلف طلبات الرسومات التي أجرتها سلاسل محادثات مختلفة. يمكنك اختيار "شرائح" فردية لتحديد المدّة التي استغرقتها، أو يمكنك السحب على طول صفّ ما يؤدي إلى فتح قسم "شرائح" في أسفل الصفحة وعرض المدّة التي استغرقتها جميع الشرائح في الإطار الزمني الذي اختَرته.
تحليل أداء الرسومات
من الممكن إجراء بعض عمليات تحليل الرسومات باستخدام RenderDoc.
- اضبط متغيّر البيئة
ANDROID_EMU_RENDERDOC
على سلسلة غير فارغة (مثل"1"
). اضبط متغيّر البيئة
TMP
على%USERPROFILE%\AppData\LocalLow
. يطلب هذا الأمر من Renderdoc وضع ملفات السجلّات في مكان يمكن الوصول إليه ضمن مساحة المحاكاة.إذا كنت تستخدم الخلفية Vulkan اختَر إعدادات الرسومات > الطبقات الضمنية لوحدة Vulkan وتأكَّد من وضع علامة في المربّع بجانب VKLAYER_RENDERDOC_Capture.
افتح محاكي المطوّرين لبرنامج "ألعاب Google Play على الكمبيوتر". يتم رسم تراكب RenderDoc فيверху طالما أنّ الميزة مفعّلة.
يمكنك تشغيل RenderDoc في أي وقت قبل أو بعد بدء تشغيل محاكي المطوّرين لبرنامج "ألعاب Google Play على الكمبيوتر".
انقر على ملف > إرفاق بالنسخة النشطة واختَر crosvm.
تحديد متغيّرات البيئة
لكي يعمل Renderdoc، عليك إضافة متغيّرات البيئة أو تغييرها في نظام التشغيل Windows. يمكنك تغيير متغيّرات البيئة باستخدام واجهة المستخدم أو PowerShell أو cmd.exe.
استخدام واجهة المستخدم
- اضغط على
Win+R لفتح مربّع الحوار "تشغيل". - اكتب
sysdm.cpl
لفتح نافذة خصائص النظام. - انقر على علامة التبويب الإعدادات المتقدّمة إذا لم تكن نشطة.
- انقر على الزر متغيّرات البيئة.
من هنا، يمكنك النقر على الزر جديد لإنشاء متغيّر بيئة جديد أو اختيار متغيّر والنقر على الزر تعديل لتعديله.
استخدام PowerShell
في نافذة PowerShell، اكتب:
$Env:VARIABLE_NAME=VALUE
استبدِل VARIABLE_NAME
وVALUE
بالقيم التي تريد ضبطها. على سبيل المثال، لضبط ANDROID_EMU_RENDERDOC
على "1"
، اكتب:
$Env:ANDROID_EMU_RENDERDOC="1"
استخدام cmd.exe
في نافذة cmd.exe، اكتب:
set VARIABLE_NAME=VALUE
استبدِل VARIABLE_NAME
وVALUE
بالقيم التي تريد ضبطها. على سبيل المثال، لضبط ANDROID_EMU_RENDERDOC
على "1"
، اكتب:
set ANDROID_EMU_RENDERDOC="1"
نصائح حول الإصدار 11 من نظام التشغيل Android (المستوى 30 لواجهة برمجة التطبيقات) أو إصدار أحدث
يتم تحديث تطبيق "ألعاب Google Play على الكمبيوتر" بأحدث إصدارات Android. في ما يلي بعض النصائح لاستخدام أحدث إصدار من Android.
إبقاء الأدوات محدّثة
يُثبِّت Android Studio إصدارًا من adb متوافقًا مع محاكي المطوّر، ولكن تتضمّن بعض محرّكات الألعاب إصدارًا قديمًا من adb. في هذه الحالة، بعد تثبيت محاكي المطوّرين، يمكنك العثور على إصدار متوافق من adb
على C:\Program Files\Google\Play Games Developer
Emulator\current\emulator
.
في حال تشغيل إصدار واحد من adb
، يتم إنهاء الإصدار الآخر. وهذا يعني أنّه
إذا كان محرّك اللعبة يشغّل تلقائيًا مثيل adb
الخاص به، قد تحتاج
إلى إعادة تشغيل الإصدار من adb
المضمّن في محاكي المطوّر
وإعادة الاتصال به عند نشر اللعبة.
إذا كنت تستخدم حِزمة تطبيق Android، يجب تثبيت أحدث إصدار من Bundletool من مستودع GitHub.
مساحة التخزين المحدود النطاق
يتضمّن الإصدار 11 من نظام التشغيل Android (المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث ميزة التخزين الفرعي، التي توفّر حماية أفضل لبيانات التطبيقات والمستخدمين على مساحة التخزين الخارجية. بالإضافة إلى جعل اللعبة متوافقة مع متطلبات مساحة التخزين ذات النطاق المحدّد، عليك تنفيذ خطوات إضافية لتحميل ملفات بيانات موسّعة لملف APK (obb) أو بيانات مواد العرض في محاكي المطوّر الخاص بتطبيق "ألعاب Google Play على الكمبيوتر". اتّبِع الخطوات التالية في حال مواجهة مشاكل في الوصول إلى هذه الملفات من لعبتك:
- أنشئ دليلاً يمكن لتطبيقك قراءته.
- ادفع ملفات البيانات الموسّعة إلى المحاكي.
adb shell mkdir /sdcard/Android/obb/com.example.game
adb push main.com.example.game.obb /sdcard/Android/obb/com.example.game
إذن الوصول إلى الحزمة
بسبب قواعد مستوى رؤية الحِزم الجديدة، يتم حظر التطبيقات التي تستهدف الإصدار 11 من Android
(المستوى 30 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث من طلب معلومات عن
التطبيقات الأخرى المثبّتة على الجهاز. يعني ذلك أنّه تم حظر لعبتك
من الوصول إلى "خدمات Play" عند تثبيتها من مصدر غير معروف عبر adb
بدلاً من
تثبيتها من خلال "متجر Play". لاختبار ميزة "الشراء داخل التطبيق" باستخدام لعبة تم تثبيتها من مصدر غير معروف،
يجب إضافة طلب بحث إلى الحزمة "com.android.vending
" فيملف
AndroidManifest.xml
على النحو التالي:
<manifest>
<queries>
<package android:name="com.android.vending" />
</queries>
</manifest>
تثبيت لعبتك في برنامج تشغيل الأجهزة
لا يمكنك تثبيت لعبة على تطبيق المستهلك إلى أن يتم إدراجها في каталог "خدمات ألعاب Play". بعد طرح إصدار واحد من لعبتك، يمكنك إنشاء مسار اختبار داخلي للتحقّق من صحة التحديثات المستقبلية قبل طرحها.
لا يتيح برنامج تشغيل الألعاب الميزات المخصّصة للمطوّرين في محاكي المطوّرين لبرنامج "ألعاب Google Play على الكمبيوتر". من الأفضل استخدام هذا الإصدار لاختبار جودة اللعبة قبل طرحها واختبار تجربة اللاعب الشاملة بعد الإصدار الأولي.