Unlimited WordPress themes, graphics, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Game Development
  2. Retro Game Art
Gamedevelopment

Go Beyond Retro Pixel Art مع Flat Shaded 3D in Unity

by
Length:LongLanguages:

Arabic (العربية/عربي) translation by Rahmat Hidayat (you can also view the original English article)

في هذا البرنامج التعليمي ، سأوضح لك كيفية إنشاء رسومات ثلاثية الأبعاد مظللة بشكل مسطح في لعبة الوحدة الخاصة بك ، وشرح سبب رغبتك في القيام بذلك في المقام الأول.

اليوم ، هناك وفرة من الأدوات والمحركات ثلاثية الأبعاد التي تسمح لأي شخص بعمل ألعاب ثلاثية الأبعاد. ومع ذلك ، فإن تحديات الفن ثلاثي الأبعاد مهمة شاقة وغالباً ما تتطلب قدراً هائلاً من الوقت والجهد والخبرات التي لا يمتلكها الفرد المنفرد أو الهاوي. تعمل النماذج المنخفضة المضلع ، بالتزامن مع التظليل المسطح ، على إعادة نمط التسعينيات مبكرًا ، باستخدام تقنيات يمكن لأي شخص تعلمها. وهي ليست مجرد ردة حنين إلى الماضي. يمكن دمج التظليل المسطح بسهولة مع التقنيات الحديثة مثل خرائط الغلق المحيط لإضفاء مظهرك المذهل والأنيق على لعبتك.

احصل على مثال لمشروع Unity هنا

يفترض هذا البرنامج التعليمي أنك تعرف بالفعل كيفية عمل نماذج ثلاثية الأبعاد ، أو يمكنك العثور على نماذج ثلاثية الأبعاد مجانية على الإنترنت. سأكون قد سحبت نماذج من الهواء الرقيق. هناك الكثير من البرامج التعليمية على الإنترنت لكيفية البدء في النمذجة ثلاثية الأبعاد. إذا كنت قد بدأت للتو ، فيمكنني أن أوصي بشدة بـ Wings 3D و SketchUp. كلاهما لهما واجهات يمكن الوصول إليها للغاية مقارنة مع تطبيقات النمذجة المهنية ، وسوف التصدير إلى الأشكال التي يمكن أن تستخدمها خلاط والوحدة.


لماذا استخدام تظليل مسطح؟

لذلك قررت أن تضع يديك في قذر مع يونيتي وأن تبدأ في صنع لعبة ثلاثية الأبعاد بالكامل. ربما لم تكن لديك مهارات سابقة في فن اللعب ، أو ربما قمت بعمل بعض الفن للألعاب ثنائية الأبعاد ؛ في كلتا الحالتين ، ستتعلم بسرعة أن الألعاب ثلاثية الأبعاد تتطلب مجموعة كبيرة جدًا من المهارات لإنشاء. لا تحتاج فقط إلى تعلم كيفية إنشاء نماذج ثلاثية الأبعاد ، بل تحتاج إلى إزالة هذه النماذج لرسم نسيج على سطح نموذجك بشكل صحيح. تحتاج أيضا إلى إنشاء نسيج ، بشق الأنفس.

ماذا لو كان بإمكانك إنشاء النموذج فقط ، ولكن هل تم الانتهاء منه وجاهزًا للعب بعد بضع خطوات إضافية للون وتظليلها؟ قد ينتهي الأمر مع شيء من هذا القبيل:

أو هذا

بالتأكيد ، النظرة سبارتا و lo-fi - لكن هذه هي النقطة! سواء كنت تهدف إلى الحنين في أوائل التسعينيات أو مظهرًا حديثًا مجرّدًا أو تريد فقط توفير الكثير من الوقت في صنع أصول لعبة مربى ، فإن التظليل المسطح هو خيار ممتاز من حيث الأسلوب للمبتدئين والخبراء ثلاثي الأبعاد على حد سواء.

إذا كنت بدأت للتو بفن اللعبة ، فإن بساطة سير العمل تسمح لك بالتركيز على الأساسيات: تعلم كيفية إنشاء نموذج ثلاثي الأبعاد مع صورة ظلية جميلة وشكل ، وتلوينها بمجموعة صغيرة من الألوان المختارة يدويًا. التركيز على هذه الأساسيات يعلمك المهارات الأساسية للفن دون الانحرافات.


كيف يعمل تظليل مسطح

يتكون نموذج 3D للغاية من مجموعة من القمم التي تحدد شكل هذا النموذج. بالنسبة لكل قمة رأس ، هناك أيضًا ناقلة تدعى طبيعيًا - فكر في هذا كدب صغير ملتصق من قمة الرأس.

يستخدم محرك التقديم الوضع الطبيعي لكل رأس ، ويقارن اتجاهه باتجاه أي مصدر (مصادر) مصدر واردة ، والاتجاه الذي تواجهه الكاميرا ، من أجل تحديد مقدار الضوء المطلوب تطبيقه على تلك الرأس.

يذرف العارض ببطء كمية الضوء من قمة الرأس إلى القمة التالية ، مما يعطي نموذجًا ثلاثي الأبعاد أساسيًا مظهرًا "مرنًا". ما لم تقوم بتطبيق نسيج (وغالبا ، حتى لو كنت تفعل) ، وهذا يبدو رهيب حقا على أي شيء في الواقع ليست متعرج ، وسطح "وسطح":

Flat_shaded_3D_in_Unity_Normals_and_Smooth

مع التظليل المسطح ، يتلقى سطح المضلع بأكمله كمية موحدة من الضوء ، محسوبة من سطحية عادية إلى الخارج من مركز المضلع:

Flat_shaded_3D_in_Unity_Normals_and_Flat

تستخدم تطبيقات النمذجة الحديثة "الحواف الصلبة" أو "مجموعات التنعيم" لضبط المعايير الرأسية لنموذج نموذجك لتتناسب مع المضلع المتاخم لها ، مما يؤدي إلى تظليلها بشكل موحد ومستقر. سيستخدم هذا الفنان الماهر ثلاثي الأبعاد لجعل الحواف الحادة تبدو أسطحًا حادة ومستوية تبدو مسطحة ، لكننا مهتمون بجعل النموذج بأكمله يبدو حادًا ومستويًا. لحسن الحظ ، يجعل الوحدة هذا بسيطًا جدًا.


تقنية أساسية

إذا كنت على دراية كافية بأداة النمذجة الخاصة بك ، يمكنك جعل النموذج الخاص بك يبدو مظللاً بشكل مسطح عن طريق تعيين جميع الحواف على أنها "صلبة". ومع ذلك ، في Unity ، يمكنك ببساطة اختيار السماح لـ Unity بإنشاء الحواف الصلبة تلقائيًا:

الخطوة 1

انقر فوق النموذج الخاص بك في إطار Project لإظهار إعدادات الاستيراد في لوحة المفتش.

import_begin

الخطوة 2

انتقل إلى قسم Normals & Tangents ، وفي القائمة المنسدلة Normals ، اختر Calculate.

import_calculate

الخطوه 3

اضبط Smoothing Angle على 0 وانقر فوق Apply.

import_finished

الوحدة ستجعل أي حافة أكثر وضوحًا من هذا إلى حافة صلبة. نحن نرغب في أن تكون جميع حوافنا صلبة ، لذا من الطبيعي أن يؤدي تعيينها إلى 0 إلى إعطاء هذا التأثير.

لا تتردد في تجربة زوايا تجانس مختلفة ، اعتمادًا على هندسة النموذج الخاص بك ، يمكن أن تكون طريقة سهلة بشكل مثير للدهشة لإضفاء مظهر مختلف تمامًا عليها.

import_compare

الخطوة 4

الآن لدينا نموذج لدينا مظللة مسطحة ، ونحن بحاجة إلى إعطاء بعض اللون! هناك طرق عديدة للقيام بذلك ، لكن بعضها أفضل من البعض الآخر:

  • اختيار أجزاء من النموذج الخاص بك وتعيينها على مادة مختلفة لكل لون تريد استخدامه.
  • قم بتعيين ألوان قمة الرأس في برنامج النمذجة الخاص بك.
  • قم بإنشاء "لوح ألوان" يحتوي على مجموعة من المربعات الملونة وخريطة الملمس الخاصة بك باستخدام هذا النموذج.

أنا أفضل بشكل كبير الأسلوب الأخير ، الذي سوف أصف لك أدناه. عادة ، بعد إنشاء نموذج ثلاثي الأبعاد ، يجب أن تقوم بإخراجه بعناية ليتناسب مع نسيج مصنوع يدوياً. ومع ذلك ، نظرًا لأننا مهتمون فقط بوجود لون واحد لكل مضلع ، فلا يهم ما تبدو عليه وظيفة إزالة الأشعة فوق البنفسجية — قد يكون مجرد خليط عشوائي من الرؤوس ، طالما أنه في أعلى الصورة الصحيحة

الخطوة الأولى في التلوين هي إنشاء النسيج. على سبيل المثال ، دعنا نقول أننا نريد أربعة ألوان:

palette_fulcrum

بعد ذلك ، قم بتحميل نموذجك الثلاثي الأبعاد المكتمل في نموذج الاختبار الخاص بك وقم بتحميل المحتوى الخاص بك. حدد جميع وجوه النموذج الذي ترغب في أن يكون لونًا معينًا وتزيله تلقائيًا عن الأشعة فوق البنفسجية. ستكون النتيجة على الأرجح خليطًا مربكًا من المضلعات.

Flat_shaded_3D_in_Unity_basic_uvunwrap

كما قلت ، على الرغم من أن هذا لا يهم حقا. نقل كل المضلعات فوق بعضها البعض وتغيير حجمها إلى نقطة صغيرة تلائم أحد المربعات الموجودة على نسيج لوح الألوان الخاص بك. ثم اسحبها فوق اللون الذي تختاره.

Flat_shaded_3D_in_Unity_basic_uvselect

ألق نظرة على نموذجك أقسام محكم الآن لديها اللون الصحيح! كرر هذه العملية لبقية وجوه النموذج الخاص بك ، ثم حددها وحذفها مرة أخرى استنادًا إلى اللون الذي تريده أن يكون. إذا ارتكبت خطأ ، فهي ليست مشكلة كبيرة ، ما عليك سوى اختيار الوجوه مرة أخرى ، والرجاء مرة أخرى إذا لزم الأمر ، ووضعها في المكان المناسب على النسيج. لا يمكن قول الشيء نفسه عن إزالة الأشعة فوق البنفسجية "الحقيقية"!

Flat_shaded_3D_in_Unity_basic_finished

فويلا لديك نموذج ملون ومظلل بشكل مسطح يمكنك استيراده إلى لعبتك.

Flat_shaded_3D_in_Unity_basic_imported

ماذا عن الطرق الأخرى؟

في حال كنت تتساءل ، وهنا بعض الأسباب لتجنب الطرق الأخرى اثنين:

مواد متعددة

تخلق هذه الطريقة الكثير من المواد التي سيكون عليك تتبعها في Unity ، والأهم من ذلك ، لن تقوم Unity بدفع النماذج الخاصة بك ديناميكيًا واستخدام استدعاء سحب كامل لكل مادة ، والتي تكون في الغالب أصغر اختناق على أجهزة الرسومات الحديثة.

ببساطة ، ستحصل على أداء رهيب إذا استخدمت هذه الطريقة على نطاق واسع.

ألوان الرأس

هذا بالفعل يعمل بشكل جيد إلى حد ما ، وقد ترغب في الواقع في استخدام هذا اعتمادًا على احتياجاتك الخاصة أو سير العمل الفني. ومع ذلك ، ستلاحظ شيئًا على الفور: عندما تقوم باستيراد النموذج الخاص بك وتستخدم تظليل أساسي منتشر ، لا يبدو أن ألوان قمة الرأس الخاصة بك تظهر!

وذلك لأن تظليل أساسي تجاهلها ؛ ستحتاج إلى استخدام أدوات التظليل الخاصة التي تستخدم بيانات ألوان قمة الرأس في الواقع. يمكن العثور على هذه بسهولة ، ولكن الأمور تتعقد إذا كنت تريد أيضًا تأثيرات عرض أخرى من أدوات التظليل الأخرى: فهذه الشادرات لا تستخدم ألوان الذروة في الغالب ، وستحتاج إلى تعديل المظلل بنفسك.

إذا كنت لا تعرف بالفعل كيفية كتابة تظليل ، فقد يؤدي ذلك إلى الكثير من الوقت والجهد الذي قد ترغب في إنفاقه على بقية اللعبة. أيضا ، قد يكون أنا فقط ، ولكن أجد أنه من الأسهل كثيرا تغيير ألوان متعددة في وقت واحد مع نسيج بدلا من وضعها يدويا في modeller أو في اللعبة مع برنامج نصي.


تحسين

الآن بعد أن أصبح لديك لوحة نسيج وتقنية أساسية ، يمكنك الاستمرار في إنشاء بقية الموديلات الخاصة باللعبة. كما قد تشك ، يمكنك فقط إضافة الألوان إلى لوح الألوان الخاص بك واستخدام نفس الملمس للعبة بأكملها.

هناك بالفعل بعض مزايا الأداء الكبيرة للقيام بذلك: إذا التزمت باستخدام نفس المادة في اللعبة بأكملها ، فستقوم الوحدة عادة برسم كل الأشياء الخاصة بك بشكل أكثر كفاءة من خلال "الخلط" بينها. كما ذكرت من قبل ، "سحب المكالمات" هي اختناق رئيسي في رسومات الكمبيوتر ، ومن المفيد الاحتفاظ بها إلى الحد الأدنى.

ستحاول الوحدة تلقائيًا رسم المشهد الخاص بك في أقل عدد ممكن من مكالمات السحب إذا كنت تستخدم مادة واحدة لكل شيء ، على الرغم من أن كل طراز يحتاج إلى القياس بنفس الطريقة ولديه أقل من 300 رأس تقريبًا. وسوف يعلمك جيدا كيف يتم ذلك في نافذة الإحصائيات:

Flat_shaded_3D_in_Unity_optimize_multi
Flat_shaded_3D_in_Unity_optimize_single

نصيحة: إذا كنت ترغب في معرفة المزيد عن الخلط ، فتأكد من مراجعة وثائق Unity في هذا الموضوع. هذا يجب أن يكون مطلوبا قراءة لأي شخص مهتم في أداء لعبتهم!


تغيير الألوان على الطاير

لديك مجموعة من الطرز المظللة والملونة ، ويبدو كل شيء في مكانه ، ولكن ماذا لو كنت تريد تغيير الألوان أثناء لعب اللعبة؟

على سبيل المثال ، لنفترض أن لديك نصًا سينتج عنه طائرتك ، ولكن بعد ذلك تريد تلوينه باللون الأزرق إذا كان صديقًا أو أحمر إذا كان عدوًا. يمكنك بالتأكيد إنشاء لوحات منفصلة ومواد منفصلة ، ولكن هذا يعني أنك تفقد دفعة الأداء لتجميع هذين النوعين من الطائرات.

هذا ليس مشكلة كبيرة إذا كان هناك عدد قليل منهم في عرض في وقت واحد. ومع ذلك ، خذ مثالاً على تضاريس تم إنشاؤها إجرائياً تتكون من أطنان وأطنان من البلاط أو مكعبات ، من أنواع مختلفة من التضاريس ، مثل لعبة رمل شعبية معينة. هذا يعني الكثير من المكالمات ، لكن لا تخف ، فهناك طريقة لمواصلة استخدام مادة واحدة فقط!

Flat_shaded_3D_in_Unity_palette_colorizer

تذكر كيف قمت بتلوين النموذج الخاص بك عن طريق دفع إحداثيات الأشعة فوق البنفسجية إلى صناديق ملونة؟ يتيح لك Unity تعديل القمم الخاصة بنموذجك على الطاير ، بما في ذلك إحداثيات الأشعة فوق البنفسجية ، لذلك يمكنك تحديد إحداثيات الأشعة فوق البنفسجية في مربع اللون الصحيح عبر البرنامج النصي لكل نوع مختلف من التضاريس.

أنشئ نص C # جديدًا في Unity يسمى PaletteColorizer وألصق هذا الرمز فيه:

لاستخدام هذا البرنامج النصي ، يمكنك ببساطة إضافته كمكوِّن إلى أي كائن لعبة باستخدام مادة باستخدام لوح ألوان ، وتعيين عدد الألوان لكل صف ، وتعيين مؤشر اللون (بدءًا بـ 0 في الزاوية العلوية اليسرى والفرز إلى اليمين والاسفل).

إذا لم يتم إعداد إحداثيات الأشعة فوق البنفسجية الخاصة بالنموذج الخاص بك لتناسب داخل صناديق الألواح (كما في حالة رباعية "الماء" حول السداسي) ، فحدد خانة الاختيار تجاوز الأشعة فوق البنفسجية ؛ كما ترون أعلاه ، فإن هذا سيجعل البرنامج النصي يكتب إحداثيات جديدة بالكامل بدلاً من تحويل الإحداثيات الموجودة.

شيء واحد أن نأخذ في الاعتبار حول هذه الطريقة هو أنه عند تعديل أي شبكة ، سوف تقوم الوحدة بإنشاء شبكة جديدة في الذاكرة بهدوء. إذا قمت بذلك بشكل خاص على عدد كبير من الشبكات ، فقد تواجه مشكلات في الذاكرة ، وستحتاج إلى البحث في وسيلة للتخزين المؤقت ومشاركة الشبكات التي تم تلوينها بنفس الطريقة. بالنسبة لعدد معقول من النماذج منخفضة الكثافة ، ربما لن تحتاج أبدًا للقلق بشأنها.


المخبوزات المحيطة

Flat_shaded_3D_in_Unity_ao_scene

لا يلزم بالضرورة أن يكون التظليل المسطح مقترنًا بمجموعات ألوان موحدة. إحدى الطرق التي يمكنك من خلالها إضافة بعض التفاصيل الدقيقة والنظرة الواقعية "المتربة" إلى أي سطح هي إضافة انسداد محيط به. يوفر Unity Pro طرقًا لإضافة الانسياب المحيط كفلتر ما بعد المعالجة ، ولكن أريد أن أريكم طريقة يمكنك إضافة ذلك الجزء الإضافي من الطلاء دون الحاجة إلى إصدار Pro ، وبدون الحاجة إلى أي أدوات تظليل خاصة.

ao_compare_haus

كل ما عليك القيام به هو إزالة النموذج الخاص بك و "خبز" تأثير انسداد المحيط على نسيج. هذا يتطلب منك قضاء بعض الوقت والجهد لتخليص نموذجك بشكل صحيح ، ولكن بعد هذه الخطوة ستكون مسألة عدد قليل من النقرات وقليلا من التلاعب في برنامج الطلاء الخاص بك لإعطاء نموذجك مظهرا أكثر واقعية وأكثر طرافة

الخطوة 1

أولاً ، ستحتاج إلى تشغيل Blender مع مشهد فارغ: اضغط A لتحديد كل الكائنات في مشهد بدء التشغيل ، اضغط على Delete ، ثم اضغط D للتأكيد. أنت لا تريد أي مصابيح أو كاميرات لأن هذه سوف يتم استيرادها ككائنات خردة فارغة في Unity.

الخطوة 2

ثم قم باستيراد النموذج الخاص بك فيه. (ملف> استيراد> Wavefront (.obj)). على سبيل المثال ، لنبدأ بصخرة.

ao_rock_import

الخطوه 3

افتح محرر UV وقم بإنشاء نسيج قادر على احتواء كمية التفاصيل التي تريدها تقريبًا. أنا بخيل جدا ، لذا ألتزم 256x256px لأي شيء حول حجم اللاعب (صخرة أو شجرة) ، وأكبر فقط للأجسام الكبيرة جدا (مثل الجبل الذي يمشي عليه).

ao_rock_addtexture

الخطوة 4

الآن ، قم بإلغاء النموذج الخاص بك. هناك العديد من الطرق للقيام بذلك ، والتي يتم تناولها بتفاصيل أكثر بكثير مما كنت أتمناه ، لذا يرجى الرجوع إلى وثائق Blender أو البرامج التعليمية الأخرى عبر الإنترنت حول كيفية إلغاء نموذجك بشكل صحيح وكفء.

الخطوة 5

الآن بعد أن أصبح لديك نموذج غير مغطى ، تكون مستعدًا لخبز الإطباق المحيط على نسيجك. سوف يجعل الخلاط الإغلاق المحيط مباشرة على نسيجك ، مع احترام إحداثيات الأشعة فوق البنفسجية التي قمت بلفها فقط. ببساطة اتبع هذه الخطوات:

  1. انقر على زر التقديم (رمز الكاميرا) في لوحة الخصائص على الجانب الأيمن من الشاشة.
  2. انتقل لأسفل إلى القسم الفرعي Bake (في الأسفل) وتوسيعه.
  3. تغيير وضع Bake من العرض الكامل إلى انسداد Ambient Amblusion.
  4. انقر فوق الزر Bake الموجود فوق ذلك مباشرةً.
ao_blender_bake_options
ao_blender_generate_ao

الخطوة 6

الآن لديك نسيج AO المخبوز ونموذج يحتوي على إحداثيات UV الصحيحة لاستخدامه. احفظ الملمس في ملف صورة وقم بتصدير النموذج في Blender إلى تنسيق يمكن لـ Unity استخدامه (مثل .fbx).

الخطوة 7

اعتمادا على احتياجاتك ، قد تتمكن من استخدام النسيج كما هو. ما عليك سوى إنشاء مادة Diffuse جديدة تستخدم نسيج AO المخبوز الجديد وتعيين اللون على شيء يبدو لطيفًا.

Flat_shaded_3D_in_Unity_ao_rock_inscene

ومع ذلك ، سترغب في أن يكون لديك نماذج بألوان متعددة ، مثل الشجرة. ما عليك سوى اتباع بعض الخطوات الإضافية. اتبع التوجيهات أعلاه لإنشاء بنية AO مخبأة لنموذج الشجرة الخاص بك. ولكنك في هذه المرة ، ستحتاج إلى تتبع المكان الذي تضع فيه إحداثيات الأشعة فوق البنفسجية ، لأنك ستحتاج إلى تلوين تلك المواقع على النسيج يدويًا.

سيكون من الحكمة تجميع جزر UV الخاصة بك بالألوان. في هذا المثال ، أضع أجزاء الجذع في الجزء العلوي من النسيج وأجزاء الأوراق في الأسفل.

Flat_shaded_3D_in_Unity_ao_tree_trunk
Flat_shaded_3D_in_Unity_ao_tree_foliage

الخطوة 8

افتح نسيج AO المخبوز مع برنامج الدهان الذي تختاره (أي شيء يدعم الطبقات سوف يفعل ، مثل GIMP). قم بإنشاء طبقة جديدة ووضعها فوق طبقة AO ، باستخدام طبقة AO كدليل لتلوين الطبقة الجديدة وفقًا للألوان التي تريد رؤيتها في النموذج.

استخدم أداة Lasso ، أو أداة تحديد أخرى من اختيارك ، لتحديد أجزاء المادة التي تريد تلوينها ، ثم املأ تلك باللون الصحيح.

Flat_shaded_3D_in_Unity_ao_tree_texture_brown
Flat_shaded_3D_in_Unity_ao_tree_texture_brownandgreen

الخطوة 9

لديك الآن إعداد الألوان ، لذا فقد حان الوقت للمهمة النهائية: مزج AO أعلى الألوان. قم بتحريك طبقة AO أعلى الطبقة الملونة وقم بتغيير وضع المزج إلى Multiply.

Flat_shaded_3D_in_Unity_ao_tree_texture_multiply

اضبط عتامة الطبقة على ما يبدو لطيفًا. استخدم حكمك الخاص ، ولكن تأكد من كتابة هذه النسبة ، لأنك ستحصل على تأثير موحد على كل موادك ستحتاج إلى استخدام نفس طريقة ومقدار المزج.

Flat_shaded_3D_in_Unity_ao_tree_texture_multiply_half

احفظ هذا الملمس إلى ملف وقم باستيراده في Unity إلى جانب نموذج الشجرة. إنشاء مادة مثلما فعلت لصخرة ، وذلك باستخدام نسيج قمت به للتو.

Flat_shaded_3D_in_Unity_ao_tree_inscene

هذا الى حد كبير ذلك! استخدم هذه التقنية في جميع طرازاتك لإعطاء المشهد بأكمله مظهرًا ملموسًا وملموسًا أكثر مما يمكنك الحصول عليه من خلال التظليل المسطح الأساسي.

قد تلاحظ أن المواد الخاصة بك تستخدم فقط تظليل أساسي منتشر. واحدة من الأشياء الجميلة حول استخدام المخبوزات AO المخلوطة مباشرة على نسيج اللون هي أنه يمكنك استخدام هذا الملمس مع أي تظليل آخر يأخذ نسيج منتشر ... مع عدم وجود كود AO محدد مطلوب!


استنتاج

الآن لديك مجموعة أدوات يدوية من تقنيات الرسومات التي يمكنك استخدامها لإنشاء لعبة مسطحة بالكامل. مع ما يكفي من التدريب ، يمكنك إنشاء صور مذهلة سريعة لإنتاجها وتجعلها بكفاءة.

Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.