Alaa_Hammash

احذر من كتب برمجة الألعاب التي قد تطيح بمستقبلك كمبرمج للألعاب

9 ردود في هذا الموضوع

احذر من كتب برمجة الألعاب التي قد تطيح بمستقبلك كمبرمج للألعاب

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

بعض عيوب تلك الكتب:

  • أكثر تلك الكتب يحمل عنوانا مضللا غالبا ما يحتوي: Games Programming لكنه في الحقيقة لا يتحدث إلا عن بعض من أساليب الرسم و التحريك الأساسية. العناوين المناسبة لمثل هذه الكتب هي Graphics Programming. و هناك فئة كبيرة يناسبها العنوان: Game Engine Programming حيث أنها تعلم المستخدم برمجة محركات الألعاب و لا تعلمه أساليب برمجة الألعاب.
  • تعمد تجاهل عناصر مهمة جدا في برمجة الألعاب الحديثة. أسوء ما في تلك الكتب أن كاتبها يوهم القارئ بأنه سيتعلم برمجة "الألعاب" و بالطبع المقصود هو الألعاب البسيطة جدا جدا لكن ما في عقل قارئ الكتاب هو تلك الألعاب العالمية. يصطدم القارئ بهذه الحقيقة عندما يبدأ ببرمجة اللعبة التي لطالما حلم بها، فالكتاب الذي تعلم منه لم يذكر ما يكفي عن أساليب تحري التصادم بين الأجسام و حساب زوايا ميل إطارات السيارة فوق أرض غير مسطحة و عن صعود السلم و اختيار الاجسام في المنظور ثلاثي الأبعاد بدقة و الأساليب المتبعة في تحسين أداء الألعاب بحيث لا يكون أداؤها بطيئا كزحف سلحفاة على وشك أن تموت.
  • عدم توجيه القارئ إلى الأساليب العملية في برمجة الألعاب. إن كان كاتب الكتاب مبرمج ألعاب محترف فهو الأقدر على توجيه القارئ إلى اختيار الخوارزميات التي تناسب الطرق العملية في برمجة الألعاب الحديثة. لكن أكثر ما يقدمه كاتبوا تلك الكتب هو فقط الأساليب البسيطة إما لأنهم يريدون ما يسهل على القارئ فهمه أو ربما لأن أكثرهم ليسوا مبرمجي ألعاب محترفين أو ربما لأن تلك المعلومات هي في الحقيقة أسرار عالم برمجة الألعاب و لا بد أنهم استثمروا كثيرا من عمرهم في اكتشافها و لذلك تجدهم لا يحبون كشف تلك الأسرار.
  • عدم تعليم القارئ الطرق الصحيحة لهيكلة الأصل البرمجي و الاكتفاء في أكثر الأحيان بملاحظة تقول بأن الغرض من الأصل البرمجي في الكتاب هو التعليم. لكن أكثر المبرمجين المبتدئين لا يعيرون الكثير من الانتباه لتلك الملاحظة و يعتمدون أساليب البرمجة التي تعلموها من الكتاب في برمجة الألعاب. إن أكبر مصيبة تلم بمبرمج الألعاب(بعد المصيبة في دينه) هو تعلمه لعادات سيئة في برمجة الألعاب و اتباع تلك العادات حتى يعتقد أنها هي أفضل أساليب البرمجة. تلك العادات تشبه الإدمان و يصعب بحق على المبرمج تعلم طريقة جديدة في البرمجة الا بعد الكثيرالكثير من الصبر على البرمجة باتباع الطرق الصحيحة.

قبل أن تدخل عالم تطوير الألعاب يجب أن تقرر ماذا تريد أن تكون:

• مبرمج ألعاب

• مبرمج محركات ألعاب

• اكاديميا في مجال برمجة الألعاب

بالطبع يندرج أسفل كل عنوان من ما سبق الكثير من العناوين الفرعية. إن كان خيارك هو أن تصبح مبرمج ألعاب فأنصحك باتباع الطريق التالي:

  1. إن كنت تريد أن تصبح مبرمج ألعاب محترف فعليك بلغة سي أو سي بلص بلص فقط. أما إن كنت تريد أن تبرمج الألعاب للتسلية فلا بأس بأي لغة برمجة أخرى أيا ما كانت.
  2. لا تقرأ أي كتب تعلم أوبن جي أل أو ديريكت أكس فهي مخصصة لمن يريد أن يصبح مبرمج محركات ألعاب أو محركات رسوم. اختر أحد محركات الألعاب و اعتمده لإنتاج الألعاب و لا تنسى أنه يجب أن يدعم سي أو سي بلص بلص
  3. لا تقرأ أكثر من كتاب او كتابين عن البرمجة العامة للألعاب، خذ من هذه الكتب الأفكار و لا تأخذ منها طرق البرمجة. احذر ثم احذر ثم احذر من كتاب يعلم برمجة محركات الألعاب و يدعي بأنه يعلم برمجة الألعاب. من الضروري انتقاء الكتب التي لها تقييم عال من قبل القراء و ليس من قبل المحررين.
  4. لا تجعل حماستك للبرمجة تمنعك من قراءة كتاب ممتاز عن تصميم الألعاب. هذا مهم جدا لتعرف كيف تقوم الشركات العالمية بتصميم ألعابها و ما يجب القيام به و ما لا يجب القيام به.
  5. بهذا تكون جاهزا للانتقال إلى قراءة كتب متخصصة في أساليب البرمجة المحترفة. من الضروري أن تعرف أساليب تصميم و بناء الأصل البرمجي للألعاب، فأساليب برمجة البرامج المحاسبية و الأدوات و غيرها من التطبيقات قد لا تناسب ابدا برمجة الألعاب.
  6. انتقل إلى قراءة الكتب و المقالات المتخصصة في كل مجال من مجالات برمجة الألعاب. قد يتجاوز عدد الكتب التي يجب قراءتها العشرة ( كتاب او كتابين عن كل موضوع من مواضيع برمجة الألعاب). يجب انتقاء الكتب التي لها تقييم عال من قبل القراء. قبل أن تنتقل إلى هذه المرحلة حاول أن تعرف ماذا أنجز غيرك في المجال الذي تريد الدراسة عنه لأن هذا سيساعدك في إكمال المسيرة عوضا عن البدء من نقطة الصفر.

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

تم تعديل بواسطه علاء هماش
5

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

ملاحظات مهمة .. جزاك الله خيراً :)

لكن لو أمكن إضافة بعد أسماء الكتب المفيدة التي تحقق ما ذكرته سأكون شاكراً لك :)

2

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

ملاحظات مهمة .. جزاك الله خيراً :)

لكن لو أمكن إضافة بعد أسماء الكتب المفيدة التي تحقق ما ذكرته سأكون شاكراً لك :)

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

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

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

بالتوفيق أخي :)

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

شكراً على هذه المعلومات القيمة ...... انا ادرس الان C++ ومع هذه المقالة زاد اندفاعي للدراسة

انا من سوريا و لا يوجد دورات تخصصية في هذا المجال وادرس من كتب عن الانترنت

الرجاء المساعدة في اسماء الكتب وشكرا ً على هذا الشرح الرائع

تم تعديل بواسطه ismail ismail
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

ما رأيك في اليونتي , وماهي الكتب التي تنصحنا بها

ما رأيك في السي شارب & xna

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

ما رأيك في اليونتي , وماهي الكتب التي تنصحنا بها

ما رأيك في السي شارب & xna

السلام عليكم

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

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

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

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

اما بالنسبة للسؤال عن xna، ليس خبرة ابدا في هذا المجال.

2

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

كلام سليم ، كتب برمجة الألعاب ليس من وراءها فائدة كبيرة ، هناك بعض الكتب المتخصصة مثل Graphics Programming Using OpenGL ، كتب ممتازة تعلمك علم برمجة الرسوميات بغض النظر عن المكتبة المستخدمة. واجهت سابقاً مشكلة في قراءة الكثير و الكثير من كتب " برمجة الألعاب "، مثل كتاب " كيف تصنع محرك ألعاب ، كيف تستورد مجسم 3DS ، و غيرها .. وهي مضيعة للوقت. كان من الأولى القراءة في هندسة البرمجيات و أنماط التصميم بدلاً من قراءة كتاب عن محركات الألعاب مثلاً ؟ ولكن قدر الله وما شاء فعل .

مقالاتك متميزة أخ علاء ، الله يعافيك .

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

أعتقد أن أسئلتي ستطول :blush: قلت أن من أهم مميزات اليونيتي وجود الكثير من الدروس

هل يمكن أن ترشدني إلا كتاب عربي يستحسن لو كان pdf

ثانياً هل اليونيتي يمكن برمجة لعبة 2d من خلاله لأن إسمه Unity 3D

أيضا بالنسبة لسبرايت كيف يتم في الـ 3D

لدي سؤال آخر لا علاقة له بالموضوع هل تعود لغة البرمجة أدراجها بمعنى أننا نعلم أن لغة السي ++ مبرمجه بالسي والسي مبرمجه

بلغة الـB فهل عند تنفيذ كود بالسي ++ يعود إلى السي ثم تعود إلى الـB إلى أن يصل إلى لغة الآلة :lol:

تم تعديل بواسطه سي شربة
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .