الملخص:
حقق AnyPS5، وهو مشروع مفتوح المصدر مصمم للسماح بتشغيل ألعاب PlayStation 5 مباشرة على أجهزة الكمبيوتر التي تعمل بنظامي التشغيل Windows وLinux، تقدمًا مهمًا مؤخرًا. نفذ مطورو المشروع دعم التعرف والتحويل لجميع تعليمات تظليل وحدة معالجة الرسومات PS5 التي تم تتبعها حاليًا والبالغ عددها 1,166، بمعدل تغطية 100%. وهذا يعني أن العائق الفني الذي يواجه تشغيل ألعاب PS5 على أجهزة الكمبيوتر العادية قد تم تقليله بمقدار واحد، ولكن لا تزال هناك العديد من التحديات قبل التوافق واسع النطاق مع الألعاب التجارية. ص> ص>

يختلف المسار الفني لـ AnyPS5 عن مسار محاكيات الألعاب التقليدية. تحتاج المحاكيات التقليدية عادةً إلى محاكاة بيئة الأجهزة الخاصة بوحدة التحكم في الألعاب بحيث يمكن تشغيل البرامج المصممة في الأصل لوحدة التحكم على نظام أساسي آخر للأجهزة. الهدف من AnyPS5 هو إعادة ربط الملفات القابلة للتنفيذ لألعاب PS5 ببرامج مناسبة لنظام التشغيل Windows أو Linux، وتوفير تطبيقات مكتبة النظام المقابلة حتى تتمكن الألعاب من الاستفادة بشكل مباشر من معالج الكمبيوتر وأجهزة الرسومات قدر الإمكان. ص>
يستخدم PS5 معالج AMD المخصص، وتعتمد وحدة المعالجة المركزية على بنية x86-64. يتمتع هذا بتوافق عالٍ مع مجموعة تعليمات المعالج المستخدمة بشكل شائع في أجهزة الكمبيوتر الحديثة التي تعمل بنظامي التشغيل Windows وLinux، مما يوفر الراحة للمسار الفني لـ AnyPS5. بالمقارنة مع الحلول التي تتطلب محاكاة الأجهزة المضيفة بأكملها، من المتوقع أن يؤدي هذا الأسلوب إلى تقليل بعض النفقات الإضافية. ص>
ومع ذلك، فإن نفس مجموعة تعليمات وحدة المعالجة المركزية لا تعني أنه يمكن تشغيل ألعاب PS5 مباشرة على جهاز الكمبيوتر. تحتاج اللعبة أيضًا إلى استدعاء مكتبات النظام الخاصة بـ PlayStation وواجهات الرسومات ووظائف النظام الأساسي الأخرى. يجب أن يوفر AnyPS5 تطبيقات متوافقة لهذه التبعيات، أثناء التعامل مع المشكلات مثل مكالمات النظام وإدارة الموارد وعرض الرسومات المتضمنة في تنفيذ اللعبة. ص>
يعد تحويل تعليمات تظليل وحدة معالجة الرسومات إحدى المهام الرئيسية. تعتبر أدوات التظليل في الألعاب مسؤولة عن التعامل مع عدد كبير من مهام حساب الرسومات، بما في ذلك معالجة قمة الرأس، وتظليل البكسل، وأخذ عينات النسيج، والعمليات الأخرى المتعلقة بإنشاء الشاشة. يستخدم PS5 وحدة معالجة الرسومات المخصصة من AMD، ويرتبط نظام التعليمات الخاص به ارتباطًا وثيقًا بهندسة سلسلة RDNA الخاصة بـ AMD. ومع ذلك، لا يزال برنامج الرسومات الذي تستخدمه اللعبة بحاجة إلى التحويل بشكل مناسب قبل أن يتمكن من التشغيل في بيئة الرسومات المستهدفة لـ AnyPS5. ص>
يستخدم AnyPS5 أداة إعادة التحويل البرمجي للتظليل لتحويل برامج GPU ذات الصلة إلى تنسيق SPIR-V من أجل الوصول إلى تدفق معالجة الرسومات الخاص به. SPIR-V هو تمثيل وسيط يستخدم على نطاق واسع في تجميع ونقل برامج الرسومات والحوسبة. يمكن أن يوفر أساسًا معينًا للتوافق لمعالجة الرسومات على منصات الأجهزة المختلفة. ص>
إن جوهر التقدم في هذا المشروع هو أن المطورين قد أكملوا التعرف على جميع تعليمات تظليل وحدة معالجة الرسومات 1166 ودعمها في قائمة التتبع الحالية. تغطي هذه التعليمات عدة فئات، بما في ذلك مشاركة البيانات والوصول إلى الذاكرة والعمليات العددية وعمليات المتجهات. إن إكمال القائمة بأكملها يعني أن المشروع لم يعد يحتوي على إدخالات غير منفذة للتعرف على هذه التعليمات المعروفة ومعالجتها. ص>
لكن هناك فرقًا مهمًا جدًا هنا: تغطية التعليمات بنسبة 100% لا تعني أن جميع التعليمات قد تم تنفيذها بشكل كامل ودقيق في كل لعبة. ص>
طريقة حساب المشروع، طالما أن وحدة فك ترميز التظليل يمكنها التعرف على التعليمات المقابلة، فيمكن اعتبارها كمنفذة. لذلك، يشير هذا الإنجاز بشكل أساسي إلى أن المشروع لديه القدرة على التعرف على جميع التعليمات التي تم تتبعها، لكنه لا يعني أنه تم اختبار جميع مجموعات التظليل المعقدة وتأثيرات الرسومات ومشاهد اللعبة. ص>
قد تستخدم الألعاب الفعلية مجموعة متنوعة من مجموعات التعليمات وتعتمد على تسلسلات تنفيذ محددة وسلوك الذاكرة ونتائج معالجة الرسومات. حتى لو كان بإمكان وحدة فك الترميز التعرف على كل تعليمات، وإذا كان البرنامج المحول ينتج نتائج مختلفة عند التشغيل، فقد تستمر حدوث مشكلات مثل أخطاء الرسومات أو تعطل اللعبة أو الأداء غير الطبيعي. ص>
وفي الوقت نفسه، لا يزال لدى AnyPS5 الكثير من العمل للقيام به فيما يتعلق بمكتبات النظام. يبلغ معدل تنفيذ وظائف مكتبة النظام التي يتتبعها المشروع حاليًا حوالي 84.76%، أي ما يعادل 2575 وظيفة منفذة و3038 وظيفة متتبعة. ص>
يجب أيضًا فهم هذا المؤشر بحذر. لا تمثل وظائف 3038 جميع الوظائف في نظام PS5، بل تمثل أجزاء المشروع المضمنة حاليًا في نطاق التتبع. عندما يكتشف المطورون وظائف نظام جديدة ويضيفونها، قد يستمر إجمالي الإحصاءات في الزيادة، وبالتالي سيتغير معدل التنفيذ وفقًا لذلك. ص>
السبب وراء أهمية مكتبات النظام هو أن ألعاب PS5 لا تعتمد فقط على وحدة معالجة الرسومات لإكمال عرض الشاشة، ولكنها تتطلب أيضًا من نظام التشغيل توفير الوصول إلى الملفات وإدارة الذاكرة ومزامنة الخيوط ومعالجة الإدخال والخدمات الأساسية الأخرى. إذا كانت اللعبة تستدعي وظيفة لم يتم تنفيذها بعد أو بها سلوك غير متوافق، فقد لا تبدأ اللعبة أو تعمل بشكل صحيح حتى إذا كان تظليل GPU قادرًا على التحويل. ص>
يفسر هذا أيضًا لماذا لا يعني الوصول إلى تغطية 100% لتعليمات وحدة معالجة الرسومات إمكانية تشغيل 100% من ألعاب PS5 على الكمبيوتر الشخصي. تعتبر التظليل مجرد واحد من العديد من المكونات التي تعتمد عليها اللعبة لتشغيلها؛ تؤثر مكتبات النظام وسلوك الرسومات وآليات المزامنة والميزات الأخرى أيضًا على التوافق. ص>
في الوقت الحالي، أظهر AnyPS5 بعض نتائج التشغيل الفعلية. على سبيل المثال، تظهر معلومات المشروع أن لعبة المنصة ثنائية الأبعاد "Dreaming Sarah" يمكن تشغيلها بمعدل 60 إطارًا ثابتًا على جهاز كمبيوتر مزود ببطاقة رسومات NVIDIA GeForce GTX 1050 Ti ومعالج Intel Core i5-7500. ص>
توضح هذه الحالة أن المسار الفني لـ AnyPS5 لم يعد في المرحلة النظرية، ويمكن تشغيل بعض الألعاب على الأقل في بيئة الكمبيوتر الشخصي من خلال الأدوات ذات الصلة. ومع ذلك، فإن "Dreaming Sarah" هي لعبة منصة ثنائية الأبعاد بسيطة نسبيًا، ولا يمكن استنتاج أن الروائع ثلاثية الأبعاد المعقدة يمكنها أيضًا تحقيق نفس التوافق والأداء. ص>
بالنسبة لألعاب PS5 ذات التأثيرات الرسومية المعقدة وعدد كبير من تبعيات النظام، مثل "Gran Turismo 7"، فمن غير الممكن حاليًا الحكم على متى سيتم تشغيلها بشكل طبيعي بناءً على تغطية التعليمات وحدها. تتضمن الألعاب واسعة النطاق عادةً عمليات عرض أكثر تعقيدًا وجدولة الموارد ووظائف النظام الأساسي، مما قد يتطلب من المطورين حل المشكلات على أساس كل حالة على حدة لألعاب معينة. ص>
بالمقارنة مع المحاكيات التقليدية، تعد بدائل إعادة الارتباط ومكتبة النظام التي يعتمدها AnyPS5 جذابة إلى حد ما. إذا تمكنا من الاستفادة الكاملة من قدرات وحدة المعالجة المركزية (CPU) ووحدة معالجة الرسومات (GPU) الخاصة بالكمبيوتر الشخصي مع تجنب بعض الأعباء الإضافية لمحاكاة الأجهزة المضيفة بأكملها، فقد نتمكن من توفير طريقة أكثر كفاءة لتشغيل بعض الألعاب في المستقبل. ص>
لكن هذا المسار الفني له أيضًا حدوده الخاصة. تحاول المحاكيات عادةً إنشاء بيئة تشغيل مضيفة عالمية نسبيًا، بينما يحتاج AnyPS5 إلى استكمال وتحسين تنفيذ مكتبة النظام بشكل مستمر والتأكد من توافق البرنامج المحول مع النظام الأساسي المستهدف. تعتمد الألعاب المختلفة على ميزات النظام بشكل مختلف، لذلك حتى مع استمرار تحسن التقدم الإجمالي للمشروع، قد يظل التوافق الفعلي يظهر اختلافات كبيرة بين الألعاب. ص>
بالإضافة إلى ذلك، فإن نظامي التشغيل Windows وLinux ليسا نفس بيئتي التشغيل تمامًا. يحتاج AnyPS5 إلى إنشاء ملفات قابلة للتنفيذ مقابلة لأنظمة تشغيل مختلفة والتعامل مع واجهات النظام ومتطلبات التشغيل الخاصة بها. فقط لأن اللعبة تعمل على منصة واحدة لا يعني بالضرورة أنها ستعمل على منصة أخرى. ص>
انطلاقًا من تقدم التطوير، وصل معدل تغطية تعليمات تظليل وحدة معالجة الرسومات إلى 100%، وهو إنجاز مرحلي مهم لمشروع AnyPS5. فهو يزيل فجوة تقنية صارخة في قائمة المسارات الحالية، مما يسمح للمطورين بالتركيز بشكل أكبر على توافق مكتبة النظام، ودقة تنفيذ الرسومات، ومشكلات محددة في تنفيذ اللعبة. ص>
ومع ذلك، لا يزال المشروع بحاجة إلى فترة أطول من التطوير والاختبار والتحسين قبل أن يتمكن اللاعبون العاديون من تشغيل عدد كبير من ألعاب PS5 على جهاز الكمبيوتر بسهولة. بالإضافة إلى تشغيل اللعبة بنجاح، يجب عليك أيضًا التأكد من صحة الرسومات، والإدخال طبيعي، والعملية مستقرة، ويمكن الحفاظ على الأداء المعقول أثناء اللعب الفعلي. ص>
لذلك، فإن ما يستحق الاهتمام الأكبر في هذه المرحلة ليس الرقم 100% بحد ذاته، ولكن ما إذا كان AnyPS5 يمكنه توسيع قائمة الألعاب التي تم التحقق منها تدريجيًا والسماح للألعاب الأكثر تعقيدًا بالانتقال من التشغيل التجريبي إلى إمكانية اللعب المستقرة. مع استمرار تحسين تحويل تعليمات GPU وتنفيذ مكتبة النظام، فإن احتمال تشغيل ألعاب PS5 على الكمبيوتر الشخصي يستحق التطلع إليه بالفعل. ومع ذلك، لا يمكن فهم هذا التقدم حتى الآن على أن مكتبة ألعاب PS5 حققت توافقًا مع الكمبيوتر الشخصي على نطاق واسع. ص> ص>
التعليقات