الطريق الى برمجة الالعاب الاحترافية

السلام عليكم:

أود ان اضيف هذا الموضوع هنا بعد ان اضفته لاحد المنتديات ولكن … لعدم التفاعل تركت ذلك المنتدى
لذا اتمنى ان تقبلوني عضوا لديكم في هذا الصرح الشامخ….
بعد مرور سنتين على دخولي هذا المجال كان شغلي الشاغل البحث عن الامثلة والاكواد والدروس حتى جمعت مصادر جيدة .
ولكن رأيت ان كل من كان جديدا على هذا العالم ((((عالم برمجة الالعاب )))
لديه سؤال واحد كيف ابرمج لعبة مثل فاينال فانتسي ……اففففففففف متأثر…
فهو كالشمعة يولع ثم يطفي بعد شهرين.
لذلك احببت ان اجمع هذه المواقع في موضوع واحد لعله يفيد
فمن وجد فيه الفائدة فالحمدلله .
ومن رآه تافها فالشكوى الى الله.
ومن رآه مكررا فما باليد حيلة.

اولا اقرأ النصايح المتواضعة واعذرونا ان كان فيها اخطاء (مقدما)
1- اول اجعل نيتك في برمجة الالعاب خالصة لله من حيث نصرة الاسلام والرد على الالعاب المغرضة اليهودية والنصرانية وغيرها.
2- الطريق صعب ولكن ليس مستحيل (ماتحتاجه بعد الاستعانة بالله ) (الوقت+ الصبروالمواصلة على التعلم) هذه بعض درر يزيد الدليقان (((والله انه صدق)))
3- الطريق لبرمجة الالعاب الاحترافية طريقين لا ثالث لهما:
directx xxxxx opengl
والطريقان يوصلانك الى نهاية متشابهه تقريبا.

كيف اتعلمهما…

اولا لازم تكون مبرمج سي بلس بلس محترف (ممكن بالبيسك ولكن انا اتحدث عن الاحتراف) ,وتعلم السي سهل بإذن الله
ولكن لابد من ان يكون لديك مصادر جيدة للتعلم وياليت تبحث عن كتاب عربي مميز (ركز على مميز)يعني ليس اي كتاب وان لم تجد فمن الدروس المنتشرة والمواقع الكثيرة وليس المجال لذكرها هنا ….
ولكن لغة السي بلس تحتوي على مفاهيم جديدة على البعض مثل مؤشرات او الفئات وغيرها
ولكن اتمنى ان لاتصدم ولاتيأس بسبب بعض الصعوبات التي تواجهك عند البداية يعني لاتقعد تمنى وتمنى وانت ماتعمل شي اجتهد وتعلم واحذر من بعض الدروس والاكواد البرمجية التي تجلب اليأس
وتعلم السي بلس (من تجربة ) يحتاج اقل 5 مدة اشهر وافرض انك جلست على السي بلس سنة كاملة يعني وش يبي يصير !!!!!!
وامر اخر هو غير اساسي ولكن مهم
وهو تعلم برمجة تطبيقات ويندوز من خلال دوال API
حيث ستواجه في اول درس عمل نافذة من خلال دوال API ا
هناك كتاب مجاني مترجم للعربية
http://winprog.org/tutorial/files/f…rial-arabic.zip
وهنا الامثلة
http://www.winprog.org/tutorial/files/source.zip
وابحث في منتدى السي بلس ستجد دروس متفرقة
WWW.ARABTEAM2000.COM
ودوال api سهلة جدا ولكنها طويلة فقط.

============
ثانيا:
تقرر ماهو مصير التعب اللي تعبته بتعلم السي هل سيذهب هباء منثورا والا تسخره في شيٍ ممتع واحترافي كبرمجة الالعاب.
اكيد انك تريد برمجة الالعاب (الاحترافية),,, طيب كيف؟
عن طريق برنامج rpg maker او gamestudio !!!! مع احترامي الكامل والكبير لمحبي هالبرامج ولكن ليست لمن يريد الاحتراف. اما من يريد الاحتراف فالطريق ليس صعب
لا اريد كثرة الكلام ..
====
لتبرمج لعبة امامك طريقين سوف نبدأ بالدايركت اكس
مميزاته
1- متطور ويتطور عند كل اصدار من اصدارات الويندوز
2- فيه شركة تدعمه وهي مكروسفت
3- وجود dx sdk فيه ملف تعليمات ضخم طبعا شرح لجميع دوال الدايركت جرافييكس صوت فيديو شبكات اللي تبي
4- دعم رهيب ل الاصوات والفيديو والشبكات فيستفيد منها حتى غير مبرمجي الالعاب
البداية
طبعا لازم يكون بجهازك دايركت اكس 9 تقدر تنزله من اي موقع للبرامج عربي او انجليزي حجمه حوالي 13 ميقا
ثانيا
نزل directx 9 sdk
اهم شي فيه انه يوفر ملفات راسية للغة السي تمكنك من تطوير العابك من خلاله.
وفيه ملف تعليمات واكثرمن 30 مثال للجرافيكس هذا عدا الاصوات والفيديو والشبكات
http://www.microsoft.com/downloads/…&displaylang=en

حجمه 99 ميقا ..صحيح كبير ولكن تتعب يوم في حياتك وتنسى واذا ماحملته لاتعب نفسك وتحاول تعلم الدايركت
لانكلو ماحملته ستفقد الملفات الرأسية+ملف التعليمات الضخم+الامثلة الدسمة+……خلاص

===
ثالثا:اذهب لها الوصلة وراح تعلم الانطلاقة
http://www.arabteam2000-forum.com/index.php?showtopic=37155

====
الامثلة:
الامثلة كثيرة ولكن المميز قليل
من المواقع الرائعة جدا جدا جدا جدا جدا جدا ……
http://www.codesampler.com/dx9src.htm
فيه مايزيد على 45 مثال من الصفر حتى الاحتراف طبعا بدون شرح ولكن عندك ملف التعليمات اذا مافهمت دالة معينة ابحث عنها
—–
http://www.ultimategameprogramming….=DirectX&page=1
فيه امثلة جيدة حوالي 38 مثال من الصفر حتى تتعمق قليلا .. وانتبه فيه عدة صفحات في الموقع
————-
http://www.gametutorials.com/
للاسف الموقع كان مجاني الى وقت قريب تقريبا قبل شهر ولكن الحين صار الملف الواحد ب 5 دولار….
والحمدلله حملت بعض الامثلة يوم كان مجاني ولكن من اراد ان يشتري فليذهب اليه وفيه امثلة على السي+السي بلس+opengl+api
——-
http://www.drunkenhyena.com/
ابحث في الموقع ستجد حوالي 10 امثلة تمشي الحال
وتلك اهم الامثلة,,,,
ولكن هناك عدد من الدروس والمواقع العامة سوف اذكرها في نهاية الموضوع.
-كتب الدايركت اكس:
كنت من عشاق جمع كتب الدايركت اكس فقد جمعت حوالي 8 كتب ……
ولكن لم استفد من كتاب واحد (((لماذا )))
لأن اسلوب الكتب يرفع الضغط فيشرح دالة معينة صفحة كاملة….حتى يجيك النوم ….من غير فائدة…

الخلاصة :
لاتعقد الأمل كثيرا على الكتب فكل ماهو بالكتب هو نسخة مما هو على النت….اعني الدايركت اكس فقط.
وبما اننا ذكرنا مميزات الدايركت اكس سأذكر بعض عيوبها:
1-تحتاج لمحترف في السي بلس فهي كائنات ودوال وثوابت طويلة صعبة الحفظ (وجهة نظري)
2-مخصصة لبيئة ويندوز فقط.
3-قلة الامثلة واختلافها من اصدار لآخر .
——————————————————————————————————–
الطريق الآخر
OPENGL
وهي المكتبة التي اخترتها حديثا وفضلتها على الدايركت اكس لعدة امور اهمها
1- انها صدرت قبل الدايركت اكس فهي اقوى فكل اصدارات الدايركت اكس هي محاولة للوصول لمستوى OPENGL .
2-مكتبة متنقلة تعمل على مختلف الانظمة
3- كثرت الامثلة والتي تعد بالمئات لدرجة ان بعض الكتب التي تختص بالفيزياء والرياضيات تضع امثلة مكتوبة بOPENGL
4-اهم ميزة على الاطلاق::::: اسهل وبمراحل من الدايركت اكس فهي عبارة عن دوال+ثوابت+متغيرات
تفهم فائدتها وخلاص.

الامثلة :
1-الموقع المشهور جددددددا
http://nehe.gamedev.net/
وحتى اختصر عليكم الوقت
حمل من هنا الكتاب حيث يحتوي على الدروس+شرحها((اكثر من 45 مثال))
http://nehe.gamedev.net/counter.asp…_opengl_chm.zip
والامثلة ستجدها في صفحة الدروس كل درس ينتهي بمثال
حمل المثال الخاص بالسي بلس بالعادة اول رابط

وابحث في الموقع السابق عن بعض الدروس الاخرى المتنوعة وبعض الروابط.

2- موقع رائع فيه اكثر من 40 مثال
http://www.codesampler.com/oglsrc.htm

3-موقع فيه عدد ضخم من الامثلة:
http://www.ultimategameprogramming….y=OpenGL&page=1

4-موقع كان مجاني لكن صار بفلوس ستجد قسم –FREE– فيه حوالي5 امثلة حملها.
http://www.gametutorials.com/gtstor…-tutorials.aspx

http://www.gametutorials.com/gtstore/c-1-test-cat.aspx

5-رابط فيه صفحة كاملة لامثلة:
http://www.opengl.org/resources/code/index.html

6-موقع رئيسي للOPENGL
WWW.OPENGL.ORG
فيه كتيبات وامثلة ودروس وملفات الرأسية و..و…..
7-موقع فيه امثلة لالعاب صغيرة وامثلة متنوعة (للمحترفين)
http://www.xdev.ru/dxgp/rgd_article…t=ogl_0000_list

8- وثيقة
http://www.eecs.tulane.edu/www/Terr…troduction.html

9-GOOGLE
موقع للبحث اكتشفته حديثا ……..
دور فيه عن اي درس مثلا
OPENGL TERRAIN
اللي تبي….

عيوب opengl
1- تحس انها مشتتة وليست بتنظيم الدايركت اكس.(((اتفلسف)))
2- لم اجد ملف مساعد يشرح جميع الدوال بتنظيم ودقة كما في الدايركت اكس.
3-دعمها للشبكات ضعيف (هذا ان وجد) ولكن تستخدم directx play
ومع ذلك تلك العيوب بسيطة ولاتذكر امام مميزاتها.

الفيزياء:
هالكلمة تسوي زحمة
وتخوف…..وتكره بالبرمجة
===
هنا محرك فيزيائي مجاني:
http://www.tokamakphysics.com/
ويوجد في الموقع http://www.codesampler.com ثلاث امثلة على المحرك سواء للدايركت اكس او OPENGL
وفي موقع http://www.tokamakphysics.com امثلة على المحرك .
والمحرك مميز تستفيد منه فيه اصطدام وقفز وغيرها .
وتوجد امثلة هنا لاحد كتب الفيزياء المختصة في برمجة الالعاب
http://examples.oreilly.com/physicsgame/
وهنا مثالين باستخدام دوال api رائعين جدا
http://www.gametutorials.com/gtstor…amics_Win32.zip

http://www.gametutorials.com/gtstor…amics_Win32.zip

والفيزياء لاتخاف منها ولايتقنها الا العمالقة لانك لو اتقنتها 100% فان شركة SONY ستخطفك…..
ولكن تحذير :::::::
اذا لم تدرس في المدرسة المتجهات+قوانين نيوتن +المقذوفات الأسية والمنحنية وغيرها من المواضيع الاساسية فاني اشك انك ستتعلم الفيزياء من خلال المواقع فانتظر حتى تكبر و تدرسها
اما الرياضيات اهم شي تعرف الجمع والطرح والمصفوفات والدوال المثلثية (جتا وجا وطقتها) —- سهلة بالسعودية ناخذها بثاني ثانوي—-

::::مواقع عامة مفيدة::::
WWW.GAMEDEV.NET
WWW.FLIPCODE.COM
WWW.CODEPROJECT.COM
http://www.planet-source-code.com/v…lt.asp?lngWId=3
ويوجد عدد من الدروس المتناثرة هنا وهناك لذلك ابحث واسأل.
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
طبعا هناك تقنيات متقدمة تبرمجها بالدايركت اكس او opengl على سبيل المثال cg arb shaders وهي متقدمة وتتطلب كرت جرافكس قوي
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
هذا ماوددت قوله ,,,,
واذكرك ان لاتستخدم برمجة الالعاب الا بالخير …الا هل بلغت اللهم فاشهد….

والسلام عليكم ورحمة الله وبركاته

 

 

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
لمناقشة الموضوع في المنتدى
 

http://www.arabteam2000-forum.com/index.php?showtopic=58172
 

الكاتب geek4arab

geek4arab

مواضيع متعلقة

التعليقات مغلقة