في
أول برنامج
تعليمي خاص بالألعاب
القديمة ، أوضحنا كيفية تخصيص أداة 2D Pixel Perfect وكيف تم إنشاء الرسومات في عصر الألعاب ذات 8 بت. في هذا المنشور ، سيتم نقلنا إلى عصر 16 بت. من خلال Mega Cat Studios ، سوف نتعلم كيفية إنشاء رسومات أصلية للألعاب بأسلوب Sega Genesis (Mega Drive) و Super NES باستخدام الخيارات وهياكل الرسومات ولوحات ألوان Unity.
إنشاء أصيلة الرسومات سفر التكوين على غرار
في هذا القسم ، سننظر في سير العمل لإنشاء الرسومات التي تحاكي صورة لوحات المفاتيح المختلفة. سيكون هناك قيود أقل مما كانت عليه في مشروع 8 بت والمزيد من الحرية عند العمل مع اللون ، ولكن لا يزال ، سفر التكوين لديه حدود. نعتقد أنه سيكون من المفيد أيضًا شرح كيفية عمل أجهزة وحدة التحكم بحيث يمكنك تطبيق هذه القيود في مشروعك القديم.
لوحات وألواح فرعية
أتاح الانتقال من 8 بت إلى 16 بت لوحات المفاتيح بسبب تعقيد المعدات للمطورين مع المزيد من الفرص. ومع ذلك ، لا تزال مبادئ إنشاء رسومات NES عالية الجودة صالحة. لا تزال جميع الرسومات مخزنة في بلاطات ، على سبيل المثال ، 8 × 8 في الحجم ، ويتم جمعها منها في صور كبيرة - العفاريت وعناصر الخلفية. لا يزال الفنانون يقتصرون على اللوحات الفرعية ذات اللون الشفاف الشائع ، ولكن 16 بت توفر مرونة أكبر للعمل مع اللوحات. من المرجح أن تكون مسرورًا لأن لوحات المفاتيح ذات 16 بت لا تحتوي على لوحة ألوان محددة جيدًا ، أي أن عدد الألوان المتاحة قد توسّع بشكل كبير مقارنةً بـ NES.
بالإضافة إلى ذلك ، يضم Genesis لوحات فرعية تحتوي على 15 لونًا بالإضافة إلى اللون الكلي المستخدم لشفافية العفاريت والطبقات. ومع ذلك ، فإن إحدى عيوب إنشاء الرسومات لـ Genesis تعمل مع لوحات فرعية. يمكن تخصيص اللوحات الفرعية بحرية للعفاريت أو تجانب الخلفية ، لكن Genesis يسمح لك باستخدام أكثر من أربع لوحات فرعية في وقت واحد. لذلك ، يحتاج الفنانون إلى التفكير في الألوان التي يجب استخدامها في اللوحة الفرعية ، بحيث يكون عددهم للخلفيات والخلفيات هو الحد الأقصى. عادة ما تحتوي لوحة Genesis الفرعية على ألوان تستخدم لكل من الخلفية والعفاريت.
يظهر مشهد لعبة Genesis أعلاه ، واللوحات الفرعية المستخدمة أدناه.إنشاء رسومات لأي نظام أساسي 16 بت ، تحتاج إلى العمل مع لوحة مفهرسة. للقيام بذلك ، يمكنك استخدام محرر Gimp ، وهو بديل مجاني لبرنامج Photoshop يسمح لك بمعالجة اللوحات المفهرسة.
لإنشاء لوحة مفهرسة في Gimp ، انتقل إلى
صورة> وضع> مفهرسة ...
يتم فتح نافذة تحويل الألوان المفهرسة.
للحد الأقصى لعدد الألوان ، قم بتعيين القيمة على
15 . يمكنك استخدام أنماط التدرج التلقائي ، لكنها عادة ما تبدو أفضل إذا قمت بإنشائها يدويًا.
يتم الآن فهرسة ألوان الصورة. يتم حفظ هذه المعلومات تلقائيًا مع الصورة بحيث يمكن استخدام فهرس الألوان. إذا كنت بحاجة إلى تغيير ترتيب الألوان في الفهرس ، فما عليك سوى النقر بزر الماوس الأيمن على خريطة الألوان وتحديد
إعادة ترتيب الألوان
...سيتم فتح نافذة تسمح لك بسحب وإسقاط الألوان ، وتغيير ترتيبها.
تتمثل الخدعة الشائعة لزيادة عمق الألوان في التحكم في اللوحة في خط مسح محدد ، على غرار الطريقة التي يتم بها تطبيق التمرير المنظر على NES. وحدة Genesis قادرة على تغيير اختيار لوحة الرسومات الفرعية في خط المسح المحدد. غالبًا ما تستخدم هذه الخدعة لإنشاء الوهم بأن جزءًا من المستوى يكون تحت الماء. تتم إضافة ألوان تحت الماء إلى لوحة فرعية منفصلة ، ويتم تحميل هذه اللوحة الفرعية عندما يتم تقديم خط الفحص المحدد على الشاشة.
التخزين في البلاط والتحميل في وحدة التحكم هذه
بشكل عام ، وحدات التحكم 16 بت تحميل البلاط الرسومات بشكل مختلف عن 8 بت. تم تحميل وحدات التحكم ذات الثمانية بتات وبلاطات العفريت والبلاط مع مجموعات كبيرة من البيانات لتوفير طاقة المعالجة ، في حين وفرت موارد وحدات التحكم ذات 16 بت مزيدًا من المرونة. يمكنهم تحميل واستبدال البلاط المنفصل أثناء التنقل ، وبفضل ذلك كان من الممكن تحميل الرسومات المطلوبة فقط. لذلك ، على شاشة واحدة أو مستوى واحد ، يمكنك استخدام مجموعة واسعة من الرسومات.
جانب فريد آخر من Genesis / Mega Drive هو أن بيانات الرسومات واللوحات ليست هي البيانات الوحيدة التي تم تحميلها على وحدة التحكم VRAM أثناء اللعبة. أدى ذلك إلى صعوبة إنشاء تصميم رسومي لوحدة التحكم ، لأن عدد مربعات الرسوم التي يمكن تحميلها في الذاكرة في وقت معين يعتمد على ما يحدث في اللعبة. في الحالة العامة ، كان لدى معظم الألعاب مساحة كافية لتحميل حوالي 1000 مربع ، ومع العناصر الديناميكية ، يمكن دائمًا تنزيلها وتحميلها مجانًا في الذاكرة.
يتم تحميل البلاط في الذاكرة في المشهد الموضح أعلاه. مساحة فارغة كبيرة في الوسط والتحف أدناه هي المساحة المخصصة في الذاكرة للأعداء والعناصر الأخرى للعبة.على الرغم من حقيقة أنه في VRAM يمكن تحميل مجموعة أكبر من البلاط في نفس الوقت ، في معظم الأحيان تم تخصيص هذه المساحة الإضافية للعفاريت. هذا يوفر رسومًا أكثر تعقيدًا ويسمح بعرض المزيد من العفاريت على الشاشة في وقت واحد. وهذا يعني أن فلسفة التصميم الأساسية مع مقاطع القطع المكررة كانت لا تزال تستخدم بنشاط في رسومات 16 بت ، بسبب أن الخلفية لم تشغل مساحة كبيرة متاحة. أذونات NES و Genesis و SNES هي نفسها تقريبًا ، لذلك كانت قطاعات 16 × 16 عادة نقطة الانطلاق لهذه الأنواع من التصميمات.
هنا ، استخدم الفنان نمط كتلة 32 × 32 لإنشاء الجزء الرئيسي من الأرض ، وهو الخلفية.العمل مع طبقات الخلفية
يتيح لك Genesis / Mega Drive إمكانية عرض طبقتين من الخلفية في وقت واحد على الشاشة. هذا يعني أن عناصر التراكب أكثر ملاءمة لإنشاء خلفيات للتصميم. ومع ذلك ، لا يوجد سوى طبقتين ، لذلك ، لإعطاء المشهد عمقًا أكبر ، يمكن للفنان والمطور استخدام الحيل مع خطوط المسح. لحسن الحظ ، نظرًا لأن كل هذا يمكن نقله إلى الطبقة الثانية ، فقد كان للمصممين الحرية في وضع الأشياء الأمامية أمام الخلفية دون تدمير الأوهام.
بالإضافة إلى ذلك ، بفضل وجود الطبقة الثانية ، لم يعد على المطورين تطبيق الحيل ذات أولويات العفريت. بدلاً من تغيير أولويات العفاريت باستمرار ، أصبح من الممكن الآن تعيين طبقة ثانية من الخلفية المعروضة أمام اللاعب. ومع ذلك ، بالنسبة للتراكب الأكثر تعقيدًا ، فقد يتطلب الأمر معالجة سريعة لأولويات العفريت. تحتوي طبقة الخلفية الثانية أيضًا على مساحة يمكن استخدامها للواجهة. تم إغلاق هذه المنطقة في مكانها ولن يتم التمرير مطلقًا.
بسبب العرض من أعلى لأسفل للشجرة ، كان من الضروري إنشاء مربعات خاصة لمعالجة ترتيب طبقات العفريت.القيود العفريت
عند التبديل إلى 16 بت ، تزداد حرية العمل باستخدام العفاريت بشكل كبير. يتيح لك Genesis / Mega Drive إمكانية العرض في وقت واحد على الشاشة حتى 80 sprites و 20 sprites على خط أفقي واحد ؛ لا يتم تقديم جميع العفاريت اللاحقة. بالإضافة إلى ذلك ، لم تعد العفاريت منفصلة 8 × 8 بلاطات. سفر التكوين قادر على توليد العفاريت واحدة تتكون من عدة بلاطات. يمكن أن تكون من بلاطة إلى بلاطات 4 × 4. يجب أن تتألف الصور الأكبر حجمًا من العديد من العفاريت.
تستخدم رسومات الرئيس النهائي عددًا كبيرًا من عناصر الخلفية المتحركة والطبقات والكثير من العفاريت. كل هذا سيكون مستحيلاً على منصة 8 بت.أنماط التدرج والتباين
واحدة من السمات المميزة لرسومات عصر 16 بت هو استخدام التدرج. في تلك الأيام ، تم لعب الألعاب على أجهزة تلفزيون CRT ، حيث عادة ما يتم دمج وحدات بكسل الشاشة مع بعضها البعض. استفاد الفنانون من هذه الميزة من خلال تطبيق أنماط متدرجة في رسوماتهم: عندما اندمج بكسل واحد مع الآخر في نقش متكرر ، أدى هذا إلى الوهم بألوان أكثر من وحدة التحكم المسموح بها. لنقل جماليات الأصل ، لا يزال التدرج يستخدم بنشاط في فن البكسل ، على الرغم من وجود شاشات عرض أفضل.
تم استخدام التدرج في كثير من الأحيان على لوحات المفاتيح 16 بت. على شاشة CRT ، كان نمط البكسل مختلطًا ، مما يخلق ألوانًا جديدة أو تأثيرات شفافية حيث لم يكن ذلك ممكنًا.بالمقارنة مع SNES ، يعرض Genesis / Mega Drive ألوانًا ذات تباين أعلى. يجب أيضًا مراعاة ذلك عند اختيار اللوحات الفرعية. إذا قمت بإنشاء لعبة ذات ألوان صامتة ومملة ، فقد تختلف الألوان أثناء العرض على الأجهزة الأصلية. بشكل عام ، يجب إنشاء الرسومات في لوحة ألوان عالية التباين بحيث تتطابق النتيجة النهائية مع رؤية الفنان الأصلية.
إنشاء رسومات أصيلة على غرار SNES
لا تزال ألعاب Super NES تعمل مع شبكات / مربعات 8 × 8 بكسل ، لذلك من المفيد للغاية استخدام البلاط المكرر. بشكل عام ، يجب أن تكون أحجامها مضاعفات ثمانية.
لوحة الألوان
أول اختلاف أساسي بين Genesis / Mega Drive و SNES يتعلق بلوحة الألوان. مثل Mega Drive ، لا تحتوي وحدة التحكم في SNES على لوحة ألوان مثبتة في الأجهزة ، بحيث يمكنك اختيار الألوان الخاصة بك.
تعقيد SNES هو أنه يستخدم الألوان بعمق 5 بت لكل بكسل (بت لكل بكسل ، BPP) ، والتي نادراً ما نشاهدها اليوم. يمكنك تنفيذها باستخدام Gimp ، ثم قم ببساطة بلصق الصورة في 32 ظلال من RGB ، والتي سوف تتوافق مع الألوان مع 5 BPP. سيؤدي ذلك إلى عرض ألوان الصورة بدقة على وحدة التحكم.
يقع هذا الخيار في Gimp في عنصر القائمة
Colors> Posterize ... ستظهر نافذة منبثقة يمكنك من خلالها ضبط مستويات Posterize على 32 لإنشاء ألوان متوافقة مع 5 BPP.
دقة الشاشة
اختلاف كبير آخر بين النظامين يتعلق دقة الشاشة. منذ SNES كان سليل NES ، كان كل من لوحات المفاتيح دقة شاشة مماثلة. القرار الداخلي لل SNES هو 256 × 224. يتيح لك عرض الصور في مناطق آمنة في معظم أجهزة تلفزيون CRT دون قطع جزء من الصورة. لا يتغير هذا القرار أبدًا ، لذلك سيكون حجم الصورة ، ويجب على الفنان استخدامه.
تشغل هذه الصورة دقة SNES بملء الشاشة المستخدمة في معظم أوضاع الشاشة.أوضاع شاشة وحدة التحكم
في هذا القسم ، سنتحدث باختصار عن أوضاع الشاشة المختلفة.
الفرق الأكبر بين وحدات التحكم هو أن SNES يمكنها تقديم رسومات خلفية في سبعة أوضاع مختلفة للشاشة. في بعض أوضاع الشاشة ، يمكن لـ SNES عرض 256 لونًا في وقت واحد من لوحة فرعية واحدة على الشاشة. فيما يلي أوضاع الشاشة الأكثر شيوعًا:
- الوضع 1: أحد أوضاع الشاشة الأكثر شيوعًا لـ SNES. هذا هو أكثر وضع متوسط يوضح إمكانيات وحدة التحكم. يسمح لك الوضع 1 بالعمل مع ثلاث طبقات خلفية ، اثنتان منها تحتوي على لوحات فرعية ذات 16 لونًا ، وتحتوي الطبقة الأخيرة على لوحة فرعية بأربعة ألوان.
- الوضع 3: يستخدم هذا الوضع عادة للصور الثابتة الكبيرة ، مثل شاشات البداية أو المشاهد. لديها طبقتين الخلفية. يستخدم الأول لوحة فرعية كاملة 256 لونًا ، بينما يستخدم الثاني لوحة 16 لونًا.
- الوضع 7: هذا هو واحد من السمات الرئيسية لل SNES. تم عرض هذا الوضع في معظم المواد الإعلانية في وحدة التحكم. بفضل الوضع 7 ، تمكنت لوحات المفاتيح المنزلية لأول مرة من إجراء تحويلات للصور في الوقت الفعلي: القياس والتدوير والتمديد والإمالة في مستوى الخلفية. تم استخدامه لإنشاء تأثيرات زائفة ثلاثية الأبعاد يمكن رؤيتها في العديد من ألعاب السباق ومحاكاة الطيران لـ SNES.
لضمان عمل هذه الوظائف ، تتم معالجة مستوى الخلفية الوحيد في الوضع 7 بشكل مختلف تمامًا عن أوضاع الشاشة الأخرى. أولاً ، لا يوجد سوى لون واحد من 256 لونًا ، أي أن جميع العفاريت يجب أن يكون لها ألوان من لوحة فرعية لمستوى الخلفية هذا. ثانياً ، بدلاً من حجم شاشة SNES المعتادة ، كان مستوى الخلفية في الوضع 7 1024 × 1024 بكسل. إنه يضبط ويضبط حسب احتياجات المصمم.
يستخدم هذا المكتب الوضع 1 مع لوحة فرعية واحدة (يتم استخدام الاثنين الأخريين لواجهة المستخدم). تستخدم شاشة Thanks for Play الوضع 3 ، والذي يسمح للفنان بتطبيق لوحة 256 لونًا.
أحجام العفريت
مقارنة بتعقيد أوضاع شاشة الخلفية ، فإن قواعد التعامل مع العفاريت بسيطة نسبيًا. يوجد لدى SNES العديد من أوضاع العفريت المختلفة ، مثل Mega Drive تقريبًا ، ولكن مع وجود قيود صارمة: يمكن لوحدة التحكم استخدام وضعين مختلفين فقط في اللعبة.
يمكن أن يتراوح حجم العفاريت 8 × 8 أو 16 × 16 أو 32 × 32 أو 64 × 64. ولكن هذا ليس كل شيء - كان على المصممين اختيار مجموعات من قائمة جاهزة من أحجام العفاريت. يمكن استخدام المجموعات التالية في ألعاب SNES:
- 8 × 8 ، 16 × 16
- 8 × 8 ، 32 × 32
- 8 × 8 ، 64 × 64
- 16 × 16 ، 32 × 32
- 16 × 16 ، 64 × 64
- 32 × 32 ، 64 × 64
يتم اختيار هذه الأحجام "مرة واحدة وإلى الأبد" ، ويجب أن تطابقها جميع العفاريت في اللعبة. SNES قادرة على تقديم 32 sprites على خط مسح أفقي واحد ، وليس أكثر من 128 sprites على الشاشة في وقت واحد. لن يتم عرض جميع الآخرين.
يستخدم Fork Parker's Crunch-Out مجموعة من 32 × 32 و 16 × 16 لجميع العفاريت في اللعبة.يمكن أن تعمل Sprites مع 8 لوحات فرعية ذات 16 لونًا. كما هو الحال مع جميع وحدات التحكم القديمة ، فإن اللون الأول لأي لوحة فرعية هو اللون الكلي المستخدم للشفافية. يتيح لنا عدد كبير من اللوحات الفرعية مقارنة بوحدات التحكم الأخرى حرية أكبر في اختيار ألوان العفاريت. كل ما تحتاجه هو أن تتذكر أنه يوجد حد صارم يبلغ 256 لونًا.
باستخدام 2D بكسل مثالي لإنشاء ألعاب الرجعية
في
البرنامج التعليمي القديم السابق ، قمنا بتغطية خيارات 2D Pixel Perfect وإعادة إنشاء رسومات بأسلوب 8 بت.
بدءًا من Unity 2019.2 ، تعد حزمة 2D Pixel Perfect جزءًا من 2D Renderer ، والتي بدورها جزء من حزمة Lightweight Render Pipeline (LWRP). إذا كنت لا تستخدم LWRP ، فيمكن أيضًا استخدام 2D Pixel Perfect كحزمة منفصلة. في هذا البرنامج التعليمي سوف نوضح كيفية إعداد مشروع في LWRP.
إعداد مشروع جديد في الوحدة 2019.2 و LWRP
- قم بتشغيل Unity Hub ، وانقر فوق جديد ، وحدد 2D وحدد اسم مشروعك.
- لاستيراد حزمة 2D Pixel Perfect ، انقر على قائمة Window في شريط الأدوات وحدد Package Manager . في النافذة التي تظهر ، حدد حزمة Lightweight RP وتأكد من أن إصدارها 6.9.0 أو أعلى.
- ثم تحتاج إلى تكوين العارض ثنائي الأبعاد في المحرر وإنشاء أصول خطوط أنابيب جديدة. في نافذة المشروع ، انقر بزر الماوس الأيمن على نافذة الأصول وحدد إنشاء> تجسيد> خط أنابيب خفيف الوزن> خط أنابيب الأصول .
- في نافذة الأصول في نافذة المشروع ، قم بإنشاء عارض جديد ثنائي الأبعاد بالنقر بزر الماوس الأيمن واختر إنشاء> تجسيد> خط أنابيب تجسيد خفيف الوزن> 2D Renderer .
- حدد أصول خط الأنابيب المنشأة. حدد عام ، ثم قم بالتبديل من نوع Renderer من Renderer إلى الأمام إلى Custom .
- قم بتعيين Renderer 2D الذي تم إنشاؤه كقيمة لحقل البيانات.
- في خيارات الرسومات ، قم بتغيير إعدادات خط أنابيب Render Scriptable لاستخدام Asset Pipeline Asset الجديد الذي أنشأته.
هذا يكمل إعداد 2D Renderer ، وكذلك 2D Pixel Perfect Camera.
في Unity 2019.2 ، يمكن أن تحتوي العفاريت ثنائية الأبعاد على مواد Sprite-Lit تتيح لها الاستجابة لظروف الإضاءة ثنائية الأبعاد. إذا كان مشروعك لا يحتوي على إضاءة ثنائية الأبعاد ، فاستخدم المواد التي لا تتطلب إضاءة ثنائية الأبعاد بحيث تكون العفاريت مرئية ، وهي "Sprites-Default".
Pixel صبغة مثالية لأنماط الرسومات 16 بت
يجب إضافة مكون Pixel Perfect Camera إلى الكاميرا الرئيسية. نوصي بتحديد خانة الاختيار "تشغيل في وضع التحرير".
تبلغ دقة وحدة
Sega Genesis 320 × 224 بكسل (أو شبكة من 40 × 28 حجمًا 8 × 8 بكسل). وهذا ينطبق على إصدار NTSC.
تتمتع وحدة التحكم
Super NES أيضًا في إصدار NTSC بدقة 256 × 224 (30 × 28 بلاطة بحجم 8 × 8 بكسل).
لإنشاء كل من أنماط الرسوم ، نوصي باستخدام دقة ارتفاع 224 بكسل و 8 PPU.
باستخدام أداة المساعدة sprite (أعلاه توضح صورة بملء 320 × 224 من Sonic the Hedgehog لـ Sega Genesis) ، يمكنك أن تفهم كيف يتم وضع sprite مع 8 بكسل لكل وحدة (بكسل لكل وحدة ، PPU) في نافذة Scene بنفس الدقة و PPU.
إذا كنت بحاجة إلى تذكير بما يفعله كل خيار من الخيارات الموجودة في مكون كاميرا 2D Pixel Perfect Camera ، فاقرأ
البرنامج التعليمي السابق للألعاب القديمة .
مزيد من التطوير
أتمنى أن تستمتعوا بهذه السلسلة من المنشورات حول إنشاء ألعاب قديمة من 8 إلى 16 بت باستخدام 2D Pixel Perfect في أحدث إصدار من Unity.
لم ننته بعد مع 2D Pixel Perfect ، لأن هذه الحزمة ستكون جاهزة للإنتاج في Unity 2019.3 ، وستحصل أيضًا على مزيد من التوافق مع Cinemachine 2D.
اجعلنا على اطلاع دائم على مشاريعك باستخدام 2D Pixel Perfect ولا تنسوا زيارة
منتدى 2D للتحدث مع مستخدمي Unity ومطوري الوظائف ثنائية الأبعاد.