تجعل Virtual Game Controller (VGC) من السهل إنشاء وحدات تحكم قائمة على البرمجيات للألعاب وأغراض أخرى ، مما يتيح لك التحكم بسهولة في جهاز iOS مع أجهزة أخرى (أو متعددة أخرى ، كما في حالة لعبة TVOS). يلتف Framework API من GCController Framework API ، مما يجعل من السهل محاكاة كل من وحدات التحكم الخاصة بك على أساس البرمجيات ووحدات التحكم القائمة على الأجهزة والتي تتوافق مع معيار MFI ، مع قاعدة رمز واحد. يدعم واجهة برمجة تطبيقات GCController على حد سواء قراءة قيم عناصر وحدة تحكم اللعبة مباشرة (الاقتراع) بالإضافة إلى التسجيل ليتم استدعاؤه عندما تتغير القيمة باستخدام معالج قائم على الكتلة. تعمل VGC بنفس الطريقة ويدعم جميع ميزات واجهة برمجة تطبيقات GCController لكل من وحدات التحكم القائمة على البرامج والأجهزة.
على الرغم من استخدام VGC عادةً لإنشاء جهاز iOS كوحدة تحكم لجهاز iOS أو TVOS آخر ، إلا أنه يمكن استخدامه أيضًا حيث يعمل جهازان iOS كأقران ، مع تقديم بيئة لعبة مشتركة على كل جهاز. في هذا النوع من التنفيذ ، تتدفق إدخال المستخدم من خلال عناصر التحكم على الشاشة عبر الإطار ويتم معالجتها من قبل المعالجات على كلا الجهازين. يدعم VGC إنشاء أنواع عناصر مخصصة ، بما في ذلك الصور وأنواع البيانات ، بحيث يمكن تنسيق منطق اللعبة مثل الحالة بين الجهازين. هذه الإمكانية مثالية لألعاب الطاولة مع لاعبين ، بما في ذلك ألعاب Arkit حيث تريد أن يرى كلا اللاعبين ويتصرفان في مساحة لعبة مشتركة.
هام : يأتي الإطار مع مجموعة غنية من تطبيقات العينات لنظام التشغيل iOS و TVOS و MacOS ، بما في ذلك أمثلة Scenekit و Sprikekit. يظهر كمية كبيرة من الوثائق كتعليقات في مشاريع عينة IOS الطرفية و IOS المركزية ، واستخدام هذين المشروعين على الأجهزة الفاصلة هو أفضل مكان للبدء. بعد ذلك ، فكر في تجربة SceneKitshipDemo ، والتي تعطي حقًا شعورًا بكيفية تعزيز اللعبة. إذا كنت تواجه مشكلة في الحصول على عينة من المشاريع للعمل أو أي أسئلة أخرى ، فاتصل بي على [email protected].
يعد VirtualGameController بديلاً عن إطار وحدة التحكم في لعبة Apple ، بحيث يمكن دمجه بسهولة في الألعاب القائمة على وحدة التحكم.
قد يكون VirtualGameController مفيدًا في الحالات التالية:
يتم تضمين المشاريع الإطارية الخاصة بالمنصة في مساحة العمل. يدعم ملف إطار عمل واحد كلاً من الأجهزة الطرفية (وحدات التحكم المستندة إلى البرمجيات) و Centrals (أي لعبتك).
import VirtualGameController
لاحظ أنك تحتاج حاليًا إلى import GameController
أيضًا.
انظر التعليمات على الويكي لاستخدام الهدف C. `` `
الدعم الأولي موجود في الكاكوبودس.
من أجل الاندماج باستخدام قرطاج ، أضف VGC إلى Cartfile الخاص بك:
github "robreuss/VirtualGameController"
ثم استخدم الأوامر الخاصة بالنظام الأساسي لإنشاء منتجات الإنشاء التي تحتاج إلى إضافتها إلى مشروعك:
carthage update --platform iOS
carthage update --platform OSX
carthage update --platform tvOS
carthage update --platform watchOS
يتضمن المشروع تطبيقات زوجية تنفذ معظم ميزات وإعدادات الإطار المتاحة ، بالإضافة إلى توفير بيئة اختبار مفيدة بشكل عام.
ملاحظة: لا يمكنك تشغيل أكثر من تطبيق واحد باستخدام أجهزة المحاكاة في وقت واحد بسبب مشاركة عنوان IP. قم بتشغيل مركزي أو طرفي في جهاز محاكاة ، واستخدم أجهزة للأجهزة للتفاعل.
يوفر مشروع عينة Peripheral_iOS
تنفيذًا مرجعيًا لوحدة تحكم اللعبة القائمة على البرمجيات. بمجرد تنفيذ VGC في لعبتك (المركزية) ، يمكنك استخدام تطبيق Peripheral_IOS لاختباره:
يوفر مشروع عينة Central_iOS
تنفيذًا مرجعيًا لمركزي (لعبتك ، التي تتصل بها الأجهزة الطرفية). يوفر طريقة واضحة لاختبار تنفيذ الأجهزة الطرفية:
لا تتردد في الاتصال بي مع أي أسئلة إما باستخدام LinkedIn أو [email protected].
VirtualGameController عبارة عن غلاف حول إطار عمل تحكم ألعاب Apple ، وبالتالي فإن العمل مع وحدات التحكم في الأجهزة مع VGC هو نفسه مع إطار وحدة التحكم في لعبة Apple. راجع قسم تكامل اللعبة أدناه ومشاريع العينة للحصول على تفاصيل إضافية.
ترخيص معهد ماساتشوستس للتكنولوجيا (MIT)
حقوق الطبع والنشر (ج) [2018] [روب ريوس]
يتم منح الإذن بموجب هذا ، مجانًا ، لأي شخص يحصل على نسخة من هذا البرنامج وملفات الوثائق المرتبطة ("البرنامج") ، للتعامل في البرنامج دون تقييد ، بما في ذلك على سبيل المثال لا الحصر حقوق استخدام ، نسخ ، تعديل ، دمج أو نشر نسخ وتوزيعها و/أو بيعها و/أو بيع نسخ من البرامج ، والسماح للأشخاص الذين يتم تقديم البرنامج لهم للقيام بذلك ، مع مراعاة الشروط التالية:
يجب إدراج إشعار حقوق الطبع والنشر أعلاه وإشعار الإذن هذا في جميع النسخ أو الأجزاء الكبيرة من البرنامج.
يتم توفير البرنامج "كما هو" ، دون أي ضمان من أي نوع ، صريح أو ضمني ، بما في ذلك على سبيل المثال لا الحصر ضمانات القابلية للتسويق واللياقة لغرض معين وعدم الانفجار. لا يجوز بأي حال من الأحوال أن يتحمل المؤلفون أو حاملي حقوق الطبع والنشر مسؤولية أي مطالبة أو أضرار أو مسؤولية أخرى ، سواء في إجراء عقد أو أضرار أو غير ذلك ، ناشئة عن البرامج أو خارجها أو الاستخدام أو غيرها برمجة.
شعار من هنا