RPCS3 يدعم كروت ATI Radeon HD القديمة من عام 2007
أعلن فريق محاكي RPCS3 عن إضافة دعم كروت ATI Radeon HD 2000 وHD 3000 وHD 4000 المبنية على معمارية TeraScale 1.
يأتي ذلك بالإضافة إلى الدعم السابق لكروت Radeon HD 5000 وHD 6000 المبنية على معمارية TeraScale 2.
Mesa r600 ومحرك الرسوميات OpenGL.
تعريفات Windows القديمة لهذه الكروت غير مدعومة.
ما أهمية هذا التطوير؟
كروت TeraScale التي يشملها التطوير صدرت خلال الفترة من 2007 إلى 2011 تقريبًا، وأصبحت بعض هذه الكروت قادرة الآن على تهيئة RPCS3 وعرض ألعاب PlayStation 3 بصورة صحيحة.
-
التشغيل يعتمد على تعريف
r600المفتوح المصدر ضمن Mesa. -
محرك الرسوميات المطلوب داخل المحاكي هو
OpenGL. - كروت TeraScale 1 تحتاج إلى تجاوز إصدار OpenGL وGLSL المعلن.
- الدعم التقني لا يعني ضمان أداء مناسب في جميع الألعاب.
TeraScale 2 واختبار Radeon HD 5850
كان RPCS3 يدعم كروت Radeon HD 5000 وHD 6000 المبنية على TeraScale 2 منذ عام 2021. هذه الكروت تدعم مستويات OpenGL وGLSL المطلوبة، ولذلك يمكن تشغيل RPCS3 عليها دون متغيرات تجاوز إضافية.
أعاد الفريق اختبار كرت ATI Radeon HD 5850 لمقارنة إصدار RPCS3 المستخدم عند إعلان الدعم السابق مع إصدار حديث بعد نحو 5 سنوات من التحسينات.
| عنصر الاختبار | المواصفات |
|---|---|
| المعالج | AMD FX-8350 @ 4.6 GHz |
| كرت الشاشة | ATI Radeon HD 5850 |
| الذاكرة | 8 GB RAM |
| نواة Linux | Linux Kernel 7.0 |
| تعريف Mesa | Mesa 26.0.5 |
| الإصدار القديم | RPCS3 v0.0.19-12988 |
| الإصدار الحديث | RPCS3 v0.0.40-19391 |
توضح النتيجة أن تحسينات RPCS3 المستمرة لا تفيد الكروت الحديثة فقط، بل ترفع الأداء كذلك على كروت رسوميات قديمة جدًا.
كيف أصبح دعم TeraScale 1 ممكنًا؟
كروت Radeon HD 2000 وHD 3000 وHD 4000 تبلغ النظام افتراضيًا بأنها
تدعم OpenGL 3.3 وGLSL 3.30 فقط.
يحتاج RPCS3 إلى مستويات أعلى لكي يبدأ محرك OpenGL، ولذلك استخدم
المطورون متغيرات Mesa لتجاوز الإصدارات المعلن عنها إلى
OpenGL 4.3 وGLSL 4.40.
بداية اختبار محرك OpenGL على كروت TeraScale 1.
في البداية كان المحاكي يتوقف أثناء إنشاء Ring Buffer باستخدام
NamedBufferStorage، ويعيد مؤشرًا فارغًا أثناء تهيئة
محرك الرسوميات.
الاختبارات الأولية وتحديد موضع فشل تهيئة محرك OpenGL.
بعد التحقيق اتضح أن السبب هو عدم دعم هذه الكروت لميزة
Shader Storage Buffer Objects المعروفة اختصارًا باسم
SSBO.
كان كود RPCS3 يفترض أن كل كرت مدعومة توفر هذه الميزة. أضاف المطورون فحصًا فعليًا للامتداد، وتعطيل المسار الذي يعتمد عليه عندما لا يكون متاحًا.
ATI Radeon HD 4890
كانت كرت ATI Radeon HD 4890 أول كرت من معمارية TeraScale 1 يجري اختبارها مع RPCS3.
صدرت الكرت عام 2009، وتعتمد على
المعالج الرسومي RV790، وتعد أقوى كرت TeraScale 1
أطلقتها ATI.
| المواصفة | ATI Radeon HD 4890 |
|---|---|
| المعالج الرسومي | RV790 |
| ذاكرة الرسوميات | 1024 MB VRAM |
| وحدات التظليل | 800 |
| وحدات الحوسبة | 10 |
| سنة الإصدار | 2009 |
الألعاب البسيطة يمكن أن تصل إلى أداء قابل للعب على HD 4890.
استطاعت الكرت تشغيل الألعاب البسيطة بمستوى أداء قابل للعب، لكن الألعاب ذات الرسوميات المعقدة أصبحت محدودة بقوة كرت الشاشة.
لماذا تعاني الكرت رغم أنها أقوى من RSX؟
- شيفرات Shader التي يولدها RPCS3 معقدة وغير محسنة بالكامل لمعمارية TeraScale القديمة.
- يستخدم المحاكي كرت الشاشة في فك ترميز Textures وتحويل صيغ الصور لتخفيف بعض العمليات عن المعالج المركزي.
- الحاسب يستخدم ذاكرة منفصلة بين VRAM وذاكرة النظام، ولذلك يحتاج إلى نقل كميات من البيانات عبر PCI Express.
- تصميم ذاكرة PS3 يسمح بالوصول إلى مجموعات الذاكرة بطريقة أقرب إلى UMA مقارنة بالحاسب المكتبي التقليدي.
ATI Radeon HD 3870
انتقل الفريق بعد ذلك إلى كرت ATI Radeon HD 3870 من سلسلة
Radeon HD 3000، والتي صدرت عام 2007
وتعتمد على المعالج الرسومي RV670.
| المواصفة | ATI Radeon HD 3870 |
|---|---|
| المعالج الرسومي | RV670 |
| ذاكرة الرسوميات | 512 MB VRAM |
| وحدات التظليل | 320 |
| وحدات الحوسبة | 4 |
| سنة الإصدار | 2007 |
رغم أنها أضعف بكثير من HD 4890، استطاعت الكرت عرض الألعاب البسيطة وتشغيل بعضها بمستوى أداء مقبول عند خفض انتر ريزلوشن.
لعبة OutRun Online Arcade بدقة 720p بسرعة 18.5 FPS، مقارنة بدقة 273p بسرعة 22.8 FPS.
اختبار إضافي لتشغيل الألعاب على Radeon HD 3870.
ATI Radeon HD 2600 XT
اختبر الفريق كذلك كرت ATI Radeon HD 2600 XT، وهي إحدى أضعف كروت TeraScale 1، كما أنها أضعف من معالج RSX الرسومي الموجود داخل جهاز PlayStation 3.
| المواصفة | ATI Radeon HD 2600 XT |
|---|---|
| المعالج الرسومي | RV630 |
| ذاكرة الرسوميات | 256 MB VRAM |
| وحدات التظليل | 120 |
| وحدات الحوسبة | 3 |
| سنة الإصدار | 2007 |
الكرت مدعومة من الناحية التقنية ويستطيع المحاكي عرض الرسوميات عليها، لكنها أضعف من أن تقدم تجربة لعب عملية حتى في السيناريوهات البسيطة.
تحديث الحد الأدنى لمتطلبات RPCS3
خفّض فريق RPCS3 الحد الأدنى المستهدف لكروت AMD القديمة من ATI Radeon HD 5550 المبنية على Redwood إلى ATI Radeon HD 2900 XT المبنية على R600.
| الحالة | كرت الشاشة | المعمارية | الملاحظة |
|---|---|---|---|
| الحد الأدنى السابق | ATI Radeon HD 5550 | Redwood | TeraScale 2 |
| الحد الأدنى الجديد | ATI Radeon HD 2900 XT | R600 | TeraScale 1 |
| مدعومة تقنيًا فقط | ATI Radeon HD 2600 XT | RV630 | أضعف من أن تصبح حدًا أدنى عمليًا |
طريقة تشغيل RPCS3 على كروت TeraScale
المتطلبات
- توزيعة Linux متوافقة وحديثة.
- تعريف Mesa المفتوح المصدر.
- استخدام برنامج التشغيل
r600. - اختيار محرك
OpenGLداخل RPCS3. - استخدام أحدث إصدار متاح من المحاكي.
كروت TeraScale 1
تشمل Radeon HD 2000 وHD 3000 وHD 4000. شغّل نسخة AppImage باستخدام الأمر التالي:
المتغير الأول يجعل Mesa يبلغ المحاكي عن
OpenGL 4.3، بينما يحدد المتغير الثاني
GLSL 4.40.
كروت TeraScale 2
تشمل Radeon HD 5000 وHD 6000، ولا تحتاج عادة إلى متغيرات تجاوز إضافية. يمكن تشغيل المحاكي مباشرة:
إعداد Shader المقترح
عند مواجهة انهيارات أو مشاكل استقرار أثناء بناء Shaders، يوصي فريق RPCS3 باستخدام الوضع التالي:
قد يكون هذا الوضع أبطأ من الخيارات الحديثة، لكنه قد يقدم استقرارًا أفضل مع كروت TeraScale القديمة.
هل يعمل هذا الدعم على Windows؟
أوضح الفريق أن تعريف OpenGL القديم الذي استخدمته AMD على Windows،
والمعروف باسم Orca، لا يقدم الوظائف والاستقرار والأداء
المطلوب لتشغيل RPCS3 بصورة صحيحة.
لذلك لا يكفي امتلاك كرت Radeon HD قديمة؛ يجب استخدام Linux وتعريف Mesa المتوافق.
الخلاصة
لا يعني هذا التطوير أن كرت صدرت عام 2007 ستشغل جميع ألعاب PlayStation 3 بسرعة كاملة، لكنه يثبت قدرة RPCS3 على العمل فوق عتاد قديم جدًا عندما تتوفر تعريفات مفتوحة المصدر تسمح بإصلاح المشاكل وإضافة المسارات البديلة المطلوبة.
- كروت Radeon HD 2000 وHD 3000 وHD 4000 أصبحت مدعومة تقنيًا.
- التشغيل متاح على Linux باستخدام Mesa r600 وOpenGL.
- كروت TeraScale 1 تحتاج إلى تجاوز إصدارات OpenGL وGLSL.
- Radeon HD 4890 تستطيع تشغيل بعض الألعاب البسيطة بأداء قابل للعب.
- Radeon HD 3870 تستفيد من خفض انتر ريزلوشن إلى مستويات منخفضة.
- Radeon HD 2600 XT تعرض الرسوميات، لكن أداءها غير عملي.
- الحد الأدنى الجديد أصبح ATI Radeon HD 2900 XT.
شكر خاص للمطورين
- AniLeo: توفير كروت TeraScale، وإجراء الاختبارات وعمليات Debugging.
- kd-11: تطوير الإصلاحات المطلوبة داخل محرك OpenGL في RPCS3.
كتب المقال الأصلي AniLeo، وراجعه المطور kd-11.
0 تعليقات