المدخل الشامل لبرمجة وتصميم الالعاب الالكترونية

أولا قبل دخول المجال يجب علينا ان نعرف الفرق بين برمجة الالعاب و صناعة الالعاب ؟

- برمجة الالعاب : تعتبر جزء من صناعة الالعاب نحتاج الى :
1 - مكتبة الرسومات والاصوات في المنصة او الجهاز مثل مكتبة directx و opengl.
2 - محاكاة الفيزياء كالقفز و الحركة والجاذبية ...
3 - المنطق والذكاء الاصطناعي كما هو الحال في لعبة شطرنج .
4 - نظام تشغيل تعمل عليه لعبة مثل الويندوز , لينكس , اندرويد .
وكل هذه الامور التي تم ذكرها لا داعي الان في عصرنا هذا التعامل معها بشكل يدوي لان هناك محركات توفر لنا كل هذا
وتوفر علينا الوقت والجهد بنفس الوقت .
- صناعة الالعاب : تعني عملية تنتهي بمنتج تجاري (شركات) غالبا وتحتاج الى مراحل كثيرة , تصميم اللعبة , تطوير اللعبة , تسويق اللعبة
وهذه العملية تحتاج الى طاقم كبير لتغطية كافة الجوانب بالاضافة الى جوانب المالية , قانونية , حقوق نشر ...
وفي هذه الايام بالنسبة للفرق الصغيرة وحتى الكبيرة  يوجد منصات تقوم بنشر وتسويق اللعبة مثل : جوجل بلاي , ستيم , اب ستور
اذن علمنا ان صناعة لعبة تختلف عن برمجة وتطوير لعبة  .
- تطوير الالعاب من اهم مراحل صناعة الالعاب وهي تشمل الخطوات التقنية في صناعة اللعبة وتشمل :
1 - تصميم نماذج ثلاثية الابعاد او ثنائية الابعاد
2 - المؤثرات الصوتية والموسيقى
3 - تصميم الخرائط ومراحل اللعب
وانا ساقول لك مجال برمجة الالعاب ليس بالمجال السهل ولكن لا تقلق وبنفس الوقت ليس بالمجال الصعب
ولترى ذلك سهل عليك اولا الصبر ثم الصبر وبنفس الوقت يكون لديك رغبة في تعلم وبرمجة الالعاب .
الفرق بين العاب 2d و العاب  2.5d والعاب 3d ؟
- العاب 2d : هي عبارة عن العاب تتكون من محورين اساسيين وهما (x , y) ويقصد بهم طول و عرض ويمكنك تحرك فقط بالاربع اتجاهات (يمين,يسار,فوق,تحت).
- العاب 2.5d : هي عبارة عن العاب تتكون من ثلاثة محاور اساسية وهم (x , y ) ويقصد بهم طول و العرض وهي تكون العاب 2d ولكن التصاميم داخل لعبة تكون 3d فلذلك تم وضعها بين الاثنين .
- العاب 3d : هي عبارة عن العاب تتكون من ثلاثة محاور اساسية وهم (x , y , z) ويقصد بهم طول و عرض و ارتفاع وهي كالحياة الواقعية تقريبا .
وهذه صورة توضح الفرق بينهم
  تخطيط لعبة :
1 - تحديد الهدف من لعبة : قبل البدء في اي شيء يجب علينا معرفة اهدافنا من لعبة يعني هل سيكون هدفك من لعبة تعليم الاخرين , تحديد نتيجة ما
2 - تحديد الجمهور المستهدف : هذه الخطة يمكنك منها تحديد ان كانت لعبتك للدولتك مثلا او لدول محددة او دول تهتم بهذا نوع من الالعاب
3 - تحديد الاجهزة التي ستعمل عليها اللعبة : هذه تعتبر من الخطوات المهمة لانه يجب عليك تحديد الاجهزة التي ستعمل عليها لعبتك مثلا تعمل على الحاسوب او الاندرويد او تعمل على مختلف الاجهزة
4 - تحديد نوع اللعبة : هذه الخطوة تعتبر من الخطوات المهمة ايضا وتقسم الالعاب الى انواع كثيرة ومنها
- FBS  : وهي العاب تكون قتالية او حربية تعتمد على استخدام الاسلحة والاعب يتحكم بشخصية واحدة
- Platform game : وهي الالعاب التي يجب على الاعب تخطي حواجز ما من خلال القفز
 - Role-playing game :هي الالعاب التي  فيها يتقمص اللاعب شخصيات في إطار خيالي
 - multiplayer game : وهي الالعاب التي تتطلب الوصول الى الانترنت للعب مع الاخرين من سواء ان كان محلي او من كافة انحاء العالم 
5 - وضع قصة اللعبة وتحديات : عليك في الالعاب عمل قصة حتى لو كانت بسيطة مثلا حينما تبدا اللعبة ياتي مزارع ويخبرنا ماذا حدث معه وما عليك القيام به وما هي المهام التي يجب عليك تنفيذها وبعد انهاء المهمة تنتقل الى قصة اخرى وهكذا .
 6 - وضع العملات النقدية او النتيجة او المستوى : هذه خطوة مهمة ايضا يجب عليك وضع نقود او نتيجة مثلا حين انجاز مستوى معين يزداد مستواه وياخذ بعض من النقود وبالنسبة للنتيجة تكون مثلا في العاب الجري المستمر مثل لغبة سبوايه وهكذا
 7 - تحديد صعوبة اللعبة :  يجب عليك الموازنة في صعوبة اللعبة اي لا تجعل كل مراحل سهلة او تجعل مرحلة شبه مستحيل الفوز بها وكما نرى في الالعاب يوجد
  مستويات مخلفة ( سهل , متوسط , صعب )
مكونات اللعبة :
 1 - تصميم المساعدة او المرشد : غالبا في بداية اي لعبة يكون دليل او مرشد ليساعدك في بدء بلعبة .
 2 - وضع قوانين وقواعد اللعبة : كل لعبة لها قوانين وقواعد يجب مراعتها في الالعاب كما هو الحال عند لعبة شهير x-o اذا اتى ثلاثة من حرف واحد عموديا او افقيا يفوز الاعب .
 3 - تصميم شخصيات اللعبة والاماكن : اللعبة اهم شيء فيها تصميم ان كانت ذات تصميم رائع وجرافيك جيدة يجعل اللعبة افضل كالمنازل و الطرق ...
 4 - تصميم الواجهة الرئيسية للعبة :  والتي من خلالها يستطيع الاعب تحكم باللعبة كالقائمة الرئيسية وازرار بدء اللعبة والانهاء ..
 5 -  تصميم ازرار تحكم : الازرار في اللعبة مهمة جدا لانه الاعب من الخلال الازرار يستطيع التحرك والانتقال من مكان الى اخر وزر معين لوظيفة معينة بالاضافة العناية في اختتيار التصاميم المناسبة للنظر والوان مناسبة مثلا ليس من المعقول ان يكون لون السماء اخضر وتصميم ايقونات للتسهيل مثلا
 ايقونة كتم صوت , ايقاف اللعب ...
الاصوات في لعبة :
 1 - الاصوات المناسبة لكل فعل : الاصوات في لعبة تعتبر مهمة جدا لانها تعطي التاثيرات كثير على لعبة وعادة الصوت يكون مرتبط بالحركة او الفعل الذي يقوم به الاعب مثلا حين اطلاق رصاصة يخرج صوت اطلاق رصاصة من السلاح ولا يخرج صوت وقوع مسمار على الارض .
 2 - الاصوات الخلفية : كما هو الحال في لعبة جاتا حيث تسمع اصوات الناس والسيارات مما يعطي اللعبة مؤثرات جميلة
بعد الانتهاء من قراءة الاشياء التي تم ذكرها يمكنك الانتقال الى القسم الاتي وهو قسم محركات الالعاب :
 ماذا نعني بكلمة محرك الالعاب ؟
 محرك الالعاب يعني عبارة عن مجموة وداخل المجموعة يضم العديد من الملفات و الاوامر البرمجية والخوارزميات ويكون مكتوب بلغات والاكثر منتشرها هي سي بلس بلس اغلب المحركات طورت باستخدامها
 لماذا نختار محرك الالعاب بدلا من قيام بعمل لعبة من اي محرر للاكواد ؟
 لقد قلنا المحرك يضم اشياء كثيرة مما يسهل عليك استعاملها ويوفر عليك الوقت والجهد فمثلا بدل ان تقوم بعمل دوال فيزاء وتقوم باستدعاء مكتبة خاصة للامر هذا يمكنك ببساطة داخل محرك الالعاب من خلال الادوات الموجودة به استخدام اداة الجاذبية مثلا وهكذا بالنسبة للباقي
 الان نبدا بالمحركات :
1 - Unity 3d

رابط الموقع الرسمي : https://unity3d.com
 
هو محرك العاب قوي جدا متعدد المنصات وبيئة تطوير متكاملة تم تطويره بواسطة شركة "يونيتي تكنولوجيز" .
 
هذه صورة للمنصات التي يمكن تصدير لها

 ما اللغات المستخدمة في المحرك ؟
 
#C : لغة قوية جدا مطورة من قبل الشركة الضخمة مايكروسوفت تستخدم في برمجة الالعاب باليونتي وهي اللغة المعتمدة عند مطورين اليونتي وبالاضافة الى ان شركة تهتم اكثر بهذه لغة
 --SS-- : جافا سكربت هذه تختلف عن جافا سكربت للويب هذه لغة تم تطوريها من قبل شركة اليونتي وهي سهلة ولكن محدودة
 بعض الالعاب التي تم عملها بالمحرك 
 1 - الركاز: في أثر ابن بطوطة
2 - مانيومينت فالي


3 - اللعبة العملاقة بوكمون جو
ميزات المحرك :


- جيد للمبتدئين ولا يحتاج الكثير من الوقت لتعلمه
- يوجد مصادر كثير لتعلمه عربي وانجليزي وكافة لغات
- لغة برمجة مستخدمة في برمجة الالعاب سهلة نوعيا
- ما يميزه عن غيره يدعم الكثير من المنصات
سلبيات المحرك :
لا يوجد الكثير من سلبيات المحرك
 ولكن في البداية سيواجه المبتدئين بعض المشاكل البسيطة
 2 - UnrealEngine
رابط الموقع الرسمي : https://www.unrealengine.com
 هو محرك ألعاب تم تطويره من قبل شركة إيبيك جيمز . أول ظهور له كان عام 1998 م من خلال لعبة إطلاق النار أنريل Unreal ، منذ ذلك الحين أصبح الأساس للعديد من الألعاب .
 كان مسبقا غير مجاني ولكن حاليا اصبح مجاني ولكن يتم دفع 5% من العائدات المبيعات اذا كانت اكبر من 3 الاف دولار
 لغة مستخدمة في المحرك هي سي بلس بلس و الانريل سكربت مع العلم انه تم تطوير المحرك بسي بلس بلس
 بعض الالعاب التي صممت به :
 1 - Arkham Asylum
2 - Gearsofwar
3 - Bioshock Infinite
مميزات المحرك :
 - يتميز بالجرافيك القوية جدا
 - سهل الاستخدام بعد اتقانه بشكل جيد
 - يصمم به العاب ضخمة وكبيرة جدا
 سلبيات المحرك :
 - صعب للمبتدئين لسيما يستخدم سي بلس بلس للبرمجة
 - لا يصدر الا على منصات الويندوز
 3 - CryEngine

رابط الموقع : http://www.crytek.com/cryengine
 هو محرك ألعاب تم تطويره من قبل شركة كرايتيك واستخدم في لعبة إطلاق النار فار كراي ، تم تطويره في الأساس كتقنية تجريبية لـ إنفيديا وبعد أن رأت الشركة فعاليته قررت استخدامه في الألعاب .
 لغة البرمجة المستخدمة هي سي بلس بلس ولغة LUA
 منصة العمل فقط الويندوز
 بعض الالعاب التي صممت في المحرك :
 1 - فار كراي فينجن
2 - الصرخة البعيدة
3 - سن أوف روم
مميزات المحرك :
 - جيد لالعاب المغامرة والاكشن
 - يتم تصميم فيه الالعاب كبيرة وغالبا تكون قتالية
 سلبيات المحرك :
 - ليس للمبتدئين ابدا
 - يوجد صعوبة في المحرك
 - لا يوجد به ميزات كبيرة يعني الالعاب محددة تستطيع عملها به
 4 - Blender Game Engine
رابط الموقع الرسمي : https://www.blender.org/
 هو محرك العاب مجاني ومفتوح المصدر تصمم فيه الالعاب ثلاثية الابعاد وبنفس الوقت يمكنك تصميم وانشاء تصاميم المختلفة بنفس البرنامج مما يجعله مميزا لغة المستخدمة في المحرك : بايثون وسي بلس بلس
 بعض الالعاب التي صممت في المحرك :
 1 - panda3d

2 - BuildMoreCubes
مميزات المحرك :
 - مفتوح المصدر ومجاني
 - سهل الاستخدام وخاصة للمبتدئين
  يمكن تصميم وعمل لعبة بنفس الوقت
 سلبيات المحرك :
 - لا يصمم الالعاب كبيرة
 5 - Frostbite
رابط الرسمي للموقع : https://www.ea.com/frostbite
 هو محرك ألعاب تم تطويره من قبل شركة ديجيتال إلوجينز سي إي التي صنعت سلسلة باتلفليد.
 لغة البرمجة المستخدمة سي بلس بلس
 بعض الالعاب التي صممت به :

1 - باتلفيلد 3
2 - فيفا 17
3 - ميدل أوف أونر: وارفايتر
مميزات المحرك
 - كما نرى من الالعاب فهو محرك ضخم جدا
 - يمكن تطوير الالعاب طبيرة جدا مثل باتلفيلد
 - يمتاز بجرافيك رائعة
 سلبيات المحرك
 - ليس للمبتدئين
 - يوجد بعض الصعوبات به
 6 - GameMaker
رابط الرسمي للمحرك : https://www.yoyogames.com/
 هو سلسلة من برامج الحاسوب مصممة لإنشاء ألعاب فيديو ثنائية و ثلاثية الأبعاد لعدة منصات. تم تصميم هذا البرنامج للسماح للمطورين المبتدئين بإنشاء ألعاب فيديو خاصة بهم دون الحاجة
  لتعلم لغة برمجة متقدمة مثل سي بلس بلس
 يمكن العمل على منصات كثيرة منها ويندوز , الماك , اندرويد ...
 بعض الالعاب التي صممت به
 1 - GAMEMAKER SPOTLIGHT - HACKYZACK

2 - DRAGON RAGE
 مميزات المحرك :

 1 - سهل الاستخدام
 2 - سهل جدا للمبتدئين
 3 - يتوفر مصادر كثيرة لتعلمه
 سلبيات المحرك :
 1 - لا يمكن عمل العاب كبيرة به
 2 - العاب 3d تكون ضعيفة وليست قوية مقارتنا بالمحركات الاخرى
 التصميم
 هنا سوف اشرح لكم افضل برامج تصميم المستخدمة في الالعاب سواء تصميم الشخصيات او المباني او اي شيء
 1 - photoshope
الفوتوشوب برنامج غني عن التعريف ويستخدم كثيرا في تصميم ويمكن تصميم شخصيات او خلفيات للعبة والايقونات
 او حتى شعار للعبة ولكن يصمم فقط لالعاب ثنائية الابعاد وتكون تصاميم او صور بالبيكسل
 2 - illustrator
الاليستريتور برنامج رائع لتصميم هو مثل الفوتوشوب ولكن ما يميزه عن الفوتوشوب الصورة او تصاميم تكون فيكتور اي لا تتشوه حينما نعمل تكبير لها ولذلك اغلب العاب ثنائية الابعاد تسخدمه وهو سهل الاستخدام
 3 - maya , 3dmax
 
البرنامجين العملاقين في التصميم من افضل برامج تصميم ثلاثي الابعاد وتستخدم تصاميم كثيرا بالالعاب كالمباني او الشخصيات وبالاضافة سهل الاستخدام ولكن مايا اصعب قليلا من 3d ماكس
 4 - cinema 4d

برنامج قوي جدا في التصميم وهو تقريبا مثل برنامجين سابقين ولكن ما يميزه عنهم هو كثرة مصادر تعلمه وبالاضافة الى انه سهل الاستخدام

 5 - blender 
بلندر برنامج جيد وقوي في تصميم وكما انه بنفس الوقت محرك العاب ويمكنك تصميم به
 وهذا ما جعله مميزا كثيرا
  مصادر لتعلم كل شيء ذكرناه في الموضوع
 لاني اريد توصيل المعلومة لك بشكل سليم واحب ايضا انك تصبح من افضل مبرمجين
 ساقدم لكم مصادر جيدة للتعليم
 نبدا :
 - Unity 3d
 الموقع الرسمي للمحرك من هنا : https://unity3d.com/learn
 قنوات يوتيوب :
 1 - Brackeys
 2 - Jimmy Vegas
 3 - N3K EN
 4 - GameGrind
  - UnrealEngine
 رابط محرك رسمي : https://docs.unrealengine.com/latest/INT/
 قنوات يوتيوب :
 1 - Virtus Learning Hub / Creative Tutorials
 2 - Titanic Games
 3 - Arabic Unreal
 - CryEngine
 1 - CryEngine
 2 - Futurepoly
 - blender
 1 - BornCG
 2 - John Hamilton
 - GameMaker
 1 - https://www.yoyogames.com/learn
 2 -  Shaun Spalding
 مواقع جيدة لتصاميم جاهزة واصوات جاهزة يمكن استخدامها بلعبة
 تصاميم وجرافيك وايقونات :
 1 - http://www.procedural-worlds.com/blog/best-free-unity-assets-categorised-mega-list/
 2- https://www.assetstore.unity3d.com/en/
 3 - http://https://www.gamedevmarket.net/
 4 - http://www.gameart2d.com/freebies.html
 5 - https://itch.io/game-assets/free
 الاصوات والمؤثرات
 1 - https://www.audiogames.net/list-games
 2 - https://audiojungle.net/category/sound/game-sounds
  والان في الختام ناتي الى بعض النصائح المهمة لكم
 ليعمل المحرك بشكل سليم وبدون بطء يفضل ان يكون مواصفات الحاسوب كالاتي :
 processeur :
i5 750/760
 ram :
ليعمل بشكل جيد 4 GB او 6 - 8 GB بشكل ممتاز يعمل خصوصا لالعاب الكبيرة
بالاضافة الى وجود كرت شاشة جيد و مساحة جيدة 
 نصائح انصح بها المبتدئين
 1 - لا تفكر بالربح من البداية ابدا لان ذلك يؤدي الى تشتت في تعليم
2 - حدد ونظم اوقات للتعلم لغة والمحرك
3 - لا تذهب الى تنتقل الى لغة اخرى او محرك لان ذلك يجعلك لا تتعلم شيء
4 - يفضل ان تتعلم مع فريق سواء اصدقاء او اقارب لو شخص واحد لان ذلك يجعل عامل التحدي بينكم او التشجيع اكثر
 سلبيات و ايجابيات مجال برمجة الالعاب
سلبيات :
1 - متعب قليلا في البداية لانه لا يوجد لديك خبرة
2 - عدم توفر الكثير من الدروس عربية  حول هذا المجال (دروس متقدمة )
3 - في البداية لن تحقق اي ارباح
ايجابيات :
1 - بعد تتعمق في المجال ويصبح لديك خبرة يمكنك عمل اي لعبة تخطر في بالك وهي غير موجودة
2 - مربح جدا بعد التمكن منه
3 - مطلوب المجال كثيرا في سوق العمل
ويوجد الكثير من الايجابيات ستكتشفها بنفسك اثناء دخولك للمجال 
كيف يمكن الربح من خلال الالعاب ؟
 الربح الاكبر للمسقلين او الافراد يكون عن طريق الهواتف لانه من صعب منافسة شركات كبيرة في العاب الحاسوب
 ذلك عن طريق فتح حساب جوجل مطورين يكلف 25 دولار وجيب ان يكون لديك بطاقة اعتماد (فيزا , ماستر كارد)
 الربح يكون عن طريق ربط اعلانتك مع شركة معينة وافضلها هي ادموبي وهي شركة من جوجل
 او يمكن داخل اللعبة ادخال اعلانات cpa التي تعد مربحة جدا
 ويمكن ايضا ادراج مشتريات داخل اللعبة كما هو الحال في الالعاب مثل كلاش اوف كلانس الخ...
 وفي الختام اتمنى ان يعجبكم الموضوع
 لا يسمح بنقل الموضوع الا باذن مني
 وشكرا لكم

شارك الموضوع

مواضيع ذات صلة