الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

استخدم فقط ++C أو C لبرمجة الألعاب إلا ان كنت تفضل الاعتماد على الآخرين

بدأه علاء هماش في 29 يوليو 2011 · 23 رد · 7,932 مشاهدة · في قسم برمجة الألعاب و الرسوميات العام
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

هل أبرمج الألعاب باستخدام ++C أو C ، أم استخدم بايثون و سي شارب و لوا... و الكثير غيرها من اللغات؟

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

رأي هو أنه يجب استخدام إما لغة ++C أو C و عدم استخدام أي من اللغات الآخرى و السبب الأساسي هو أنك إن كنت تبرمج بإحدى هاتين اللغتين فإنك لست بحاجة أبدا للاعتماد على غيرك من المبرمجين لتتمكن من إضافة ميزات إضافية إلى محرك الألعاب بالإضافة إلى أنك تصبح محترفا في استخدام إحدى اللغتين و بالتالي فإنك تصبح قادرا على برمجة محرك الألعاب الخاص بك بالإضافة إلى أن كل محركات الألعاب العالمية تتم برمجتها بإحدى اللغتين....

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

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

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

ما أوردته هو نقطة في بحر هذا الموضوع و أعلم أن للكثيرين اعتراضاتهم.

تم تعديل هذه المشاركة بواسطة علاء هماش في 29 يوليو 2011 في 08:52

1 −1
#2
اقتباس
تذكر أن هناك الاف المكتبات الجاهزة التي تجعل استخدام لغة ++C سهلا جدا في الكثير من المجالات. و تذكر أنك في بداية استخدامك للغات مثل سي شارب يكون الأمر اسهل من ++C لكن بعد التعمق تجد أنك محصور في قفص في حالة سي شارب بينما تجد نفسك حرا طليقا في حالة ++C

هذا لا ينطبق على C++ وحدها .. و إنما Java أيضا ...

و أشك أن مكتبات الجافا المتاحه أكثر من مثيلاتها في السي++ .. (يكفى مكتبات Apache..)

#3
علاء هماش كتب:

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

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

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

ما أوردته هو نقطة في بحر هذا الموضوع و أعلم أن للكثيرين اعتراضاتهم.

أعتقد أن كلمة "خديعة" كبيرة جداً. هذا يسمى Code Reuse. إعادة استخدام الكود. وهو موضوع قديم قدم علم الحاسب وليس شيئاً جديداً. نفس الكلام الذي تقوله الآن قالوه مبرمجوا الأسمبلي عن أوائل لغات البرمجة عالية المستوى (مثل الـC وال ++C). ولا توجد شركة كبيرة لا تستخدمه بشكل من الأشكال.

#4

السلام عليكم

شكرا لكم على المشاركة و لكن كما أشرت سابقا فإن هناك الكثير من الخلافات بما يخص هذا الأمر.

#5
اقتباس
ما أوردته هو نقطة في بحر هذا الموضوع و أعلم أن للكثيرين اعتراضاتهم.

الصراحة انا اريد ان اعرف الجديد اين في المقالة ؟؟ السبب هو انك قلت ان البعض يستخدم السي++ والبعض يستخدم السي شارب .. حتى ان البعض وصل للاكسل ..

جميل ..

وبعدين ؟؟!!

الخص كلامك وكلامي بشئ واحد .. من الطبيعي ان تكون السي++ هي الافضل من كل النواحي التي تريد ان تقارنها مع اي لغة اخرى (( نظرتي )) .. لكن الان انت مع بحر من التقنيات .. نفيديا مثلا تطور كارتات الشاشة الخاصة خصيصا للتعامل مع DiractX او OpenGl او ما الى ذلك .. وكذلك Physix ومحركات الالعاب المبرمجة والمصممة خصيصا لكي تضع افكارك عليها فقط ..

وما تطوير XNA الا مثال على تبسيط ميكروسوفت للذين يريدون تطوير العاب لكن يجدون DiractX صعب التعامل .. لذلك صمم لتسهيل المهمة ..

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

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

لا اعتقد ..

لانك ستجد بالنتيجة انك طورت لعبة الافعى .. بينما ميكروسوفت طورت gears of war 3 باستخدام XNA + مع السي شارب ..

وفي ذلك الوقت قد وصلت اللعبة الى النسخة 12 ..

تحياتي العطرة ..

2

يَارَبُ إِن ضَاقَت قُلُوُب الْنَّاسٍ عَنْ مّافِي .. مِنْ خَيْرٍٍ فَعَفْوكَ لَا يَضِيْقْ ..

#6

السلام عليكم

أود أن أوضح بأن الكثيرين يربطون تلقائيا استخدام ++C في برمجة الألعاب باستخدام ديريكت اكس او اوبن جي ال. و بالطبع فإن هذا غير صحيح لأنه يمكنك ان تستخدم ++C في برمجة الألعاب من دون الحاجة لمعرفة أي شيئ عن DirectX أو Opengl. و هذا تماما ما قصدته في مقالتي القصيرة. نصيحتي هي استخدام ++C مع يونيتي و مع UDK و مع Ogre و Panda3D و غيرها من محركات الألعاب عوضا عن استخدام بايثون او اي لغة أخرى.

2 −1
#7
علاء هماش كتب:

السلام عليكم

أود أن أوضح بأن الكثيرين يربطون تلقائيا استخدام ++C في برمجة الألعاب باستخدام ديريكت اكس او اوبن جي ال. و بالطبع فإن هذا غير صحيح لأنه يمكنك ان تستخدم ++C في برمجة الألعاب من دون الحاجة لمعرفة أي شيئ عن DirectX أو Opengl. و هذا تماما ما قصدته في مقالتي القصيرة. نصيحتي هي استخدام ++C مع يونيتي و مع UDK و مع Ogre و Panda3D و غيرها من محركات الألعاب عوضا عن استخدام بايثون او اي لغة أخرى.

لماذا؟ لم لا أستطيع استخدام #C مع Unity3D مثلاً؟

أليس الهدف من مقالتك هو عدم الاعتماد على الموارد الخارجية؟ وها أنت تقوم باستخدام المحركات الجاهزة. :huh:

#8

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

−1
#9
System Down كتب:

لماذا؟ لم لا أستطيع استخدام #C مع Unity3D مثلاً؟

أليس الهدف من مقالتك هو عدم الاعتماد على الموارد الخارجية؟ وها أنت تقوم باستخدام المحركات الجاهزة. :huh:

السلام عليكم، ليس الهدف من مقالتي ابدا القول بأن يجب عدم الاعتماد على الموارد الخارجية. الهدف هو القول بأنه يفضل استخدام ++C و C عند برمجة الألعاب سواء كنت تستخدم احد محركات الألعاب او كنت تقوم ببرمجة محرك الألعاب الخاص بك. لماذا؟؟ لأنني كما أشرت سابقا فإنك في حالة استخدام لغات البرمجة الأخرى مثلا اللغة المرفقة مع UDK فإن حريتك في الإبداع مرتبطة بما تقرر الشركة إضافته إلى UDK و إذا أردت إضافة ميزات جديدة لا يمكن عملها باستخدام اللغة المرفقة مع UDK فإنه يتوجب عليك الانتظار إلى أن تقوم الشركة بإنتاج تلك الميزات أو أن يقوم شخص آخر بإنتاجها و أما أنت فلا حول و لا قوة لك في هذا الأمر. على سبيل المثال إذا اردت استخدام محرك للفيزياء مثل Bullet أو Newton أو .... فإن عليك الانتظار إلى أن تقرر الشركة إضافة هذه الميزة إلى UDK أما في حالة انك محترف في استخدام ++C فإنك في اي وقت يمكنك أن تضيف هذه الميزة بنفسك. كما اشرت سابقا فإنك في حالة ++C و C تصبح حرا طليقا في عالم الإبداع كلما تقدمت في البرمجة، أما في حالة اللغات الأخرى فإنك تصبح محصورا في قفص تنتظر من غيرك أن يخرجك من القفص.

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

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

2
#10
اقتباس
أطن ان الاخ الذي طرح الموضوع أراد أن يوضح أن الغرب يريد من العالم الإسلامي ان يصبح فقط تابع له غير مبدع

@بلال ..

يعني انت لو استخدمت الـ C# مع Unity3d مثلا اصبحت تابع للغرب .. لكنك لو استخدمت الـ C++ لن تصبح تابعا لهم ؟؟

ماشاءالله نظرية غريبة جدا ..

اي شئ تستخدمه للتطوير لا يعني انك تابع او غير تابع .. لاننا لو دخلنا من هذا الباب لن نخرج .. كل شئ طوروه هم ..

اسف خرجت قليلا عن الموضوع ...

------------------

@ علاء ..

انت تناقض نفسك ..

في اول الموضوع كتبت

اقتباس

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

والان تكتب ..

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

نفس الرد السابق على الاخ بلال ..

اذا كنت لا تريد ان تصبح تابعا لهم .. او انك تريد ان تستغل الشئ وتبنيه وهذا ما كتبته انت في اول الموضوع واقتبست لك ما كتبته انت ..

كيف تعود الان وتقول انا مع استخدام المحركات الجاهزة ؟؟ الم تصبح بذلك تابعا لشركات محركات الالعاب ؟!

حتى انك عندما تقول استخدم الـ C++ فانك هنا قد اصبحت تابعا.. لان بيارن ستروشوب ليس بعربي ولا مسلم .. وانما من الغرب كما عبرت انت عنه ..

اذا اصبحنا تابعين حتى لو استخدمنا السي ++ ..

تحياتي العطرة ..

1

يَارَبُ إِن ضَاقَت قُلُوُب الْنَّاسٍ عَنْ مّافِي .. مِنْ خَيْرٍٍ فَعَفْوكَ لَا يَضِيْقْ ..

#11
سنان محمد صالح كتب:

@ علاء ..

انت تناقض نفسك ..

في اول الموضوع كتبت

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

والان تكتب ..

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

لقد أخذت ما قلته في البداية و ما قلته في النهاية و لكنك أهملت ما قلته في الوسط حيث كتبت:

علاء هماش كتب:

أود أن أوضح بأن الكثيرين يربطون تلقائيا استخدام ++C في برمجة الألعاب باستخدام ديريكت اكس او اوبن جي ال. و بالطبع فإن هذا غير صحيح لأنه يمكنك ان تستخدم ++C في برمجة الألعاب من دون الحاجة لمعرفة أي شيئ عن DirectX أو Opengl. و هذا تماما ما قصدته في مقالتي القصيرة. نصيحتي هي استخدام ++C مع يونيتي و مع UDK و مع Ogre و Panda3D و غيرها من محركات الألعاب عوضا عن استخدام بايثون او اي لغة أخرى.

إذا انا لم اناقض نفسي ابدا

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

#12
علاء هماش كتب:

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

ولكن هذا ما زال يقع تحت نطاق "التبعية" كما عرّفتها. عندما تعتمد على UDK (مثلاً) فأنت الآن تحت رحمة مطوري الـUDK. حتى عندما تستخدم ++C فأنت تحت رحمة لجنة تطوير لغة ++C التي قد تأخذ اللغة في منحى قد لا يناسبك، كما هو واضح من بعض المعترضين على النسخة القادمة المعروفة حالياً بمسمى C++0X

#13
System Down كتب:

ولكن هذا ما زال يقع تحت نطاق "التبعية" كما عرّفتها. عندما تعتمد على UDK (مثلاً) فأنت الآن تحت رحمة مطوري الـUDK. حتى عندما تستخدم ++C فأنت تحت رحمة لجنة تطوير لغة ++C التي قد تأخذ اللغة في منحى قد لا يناسبك، كما هو واضح من بعض المعترضين على النسخة القادمة المعروفة حالياً بمسمى C++0X

لقد أشرت سابقا إلى أن:

علاء هماش كتب:

في حالة استخدام لغات البرمجة الأخرى مثلا اللغة المرفقة مع UDK فإن حريتك في الإبداع مرتبطة بما تقرر الشركة إضافته إلى UDK و إذا أردت إضافة ميزات جديدة لا يمكن عملها باستخدام اللغة المرفقة مع UDK فإنه يتوجب عليك الانتظار إلى أن تقوم الشركة بإنتاج تلك الميزات أو أن يقوم شخص آخر بإنتاجها و أما أنت فلا حول و لا قوة لك في هذا الأمر. على سبيل المثال إذا اردت استخدام محرك للفيزياء مثل Bullet أو Newton أو .... فإن عليك الانتظار إلى أن تقرر الشركة إضافة هذه الميزة إلى UDK أما في حالة انك محترف في استخدام ++C فإنك في اي وقت يمكنك أن تضيف هذه الميزة بنفسك ( أي أن تضيفها إلى UDK). كما اشرت سابقا فإنك في حالة ++C و C تصبح حرا طليقا في عالم الإبداع كلما تقدمت في البرمجة، أما في حالة اللغات الأخرى فإنك تصبح محصورا في قفص تنتظر من غيرك أن يخرجك من القفص.

أما بالنسبة للتبعية بما يتعلق بلغة ++C فأنا أوافقك الرأي و لكنها تبعية لا مفر منها و هي مفروضة علينا و بالطبع نفس الشيئ ينطبق على كل اللغات.

#14

تفكير سليم

بس xna ليس ضعيفاً أبداً

لأنه وكما تعلم ألعاب x box

كلها مبرمجة بالـ xna

وأنا لا أعارضك أبداً

فـ سي ++ تسمح بتطوير وإنتاج محركات وبرمجة الهاردوير وبرمجة الألعاب اللتي نتكلم عنها بصورة أفضل

بعكس c# الذي لاتستطيع تطويرها وأيضاً هي محصورة لـ windows

--------------------------------------------------------------------------------------------------------------------------------------

صلوا على الرسول

vr7y9y10.jpg
#15

أسحب كلامي :blush: ولكن السؤال هل نستطيع برمجة محرك ألعاب هو ليس كلام يرميه أحد على الآخر أعلم أن كلامك صحيح

لكن برمجة محرك ألعاب ليس عملاً سهلاً بل أنه أشبه بالمستحيل أظن أن صناعة نظام تشغيل أسهل من صنع محرك لأن برمجة المحرك تحتاج إلى علم كامل بالـc++ والدايركت إكس

الذي تميز بتعقيده

لكني لاحظت تناقض غريب في هذا المنتدى فمثلاً الموضوع في الرابط التالي

/index.php?showtopic=251215&st=0&gopid=1265074entry1265074

كأنك تريدنا أن نبتعد عن برمجة المحركات وتوجه إلى برمجة الألعاب بالمحركات الجاهزة وها أنت تطلب منا العكس

وكنت قد سحبت كلامي لأني أكتشفت أن هناك محركات أخرى يمكن أن تبرمج ألعاب للإكس بوكس

vr7y9y10.jpg
#16

بما انكم كلكم بترخموا علي بعض في موضوع نسبي ( راي صراب يحتمل الخطا و راي الاخرين خطا يحتمل الصواب )

فانا قررت ارخم علي الكل !! بما ان ده اول مشاركه ليه

ليه ميتعملش مشروع ضخم علي مستوي منتدي لعمل محرك العاب خاص بالمنتدي

و يشارك فيه كل فطاحل المنتدي من المبرمجين

طبعا ده فكره شريره ! بس افضل من الدعوه ان كل واحد يعمل المحرك بتاعه

و بالمره يكون خلص :) عقبال مخلص تعلم برمجه ( انا خلصت العمليات الاساسيه و داخل علي برمجه الكائنات )

سئل الحسن البصري يوما : ما سر زهدك في هذه الحياة ؟

فأجاب : علمت ان رزقي لا يأخذه غيري فاطمأن قلبي وعلمت ان عملي لا يقوم به غيري فاشتغلت به وحدي وعلمت ان الله مطلع علي فاستحييتُ ان يراني على معصية وعلمت ان الموت ينتظرني فاعددت الزاد للقاء ربي

#17

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

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

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

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

محركات الألعاب:

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

محركات تجارية : تحتوي المحركات التجارية على كم هائل من المعلومات و التي يتم تطريرها إستنادا إلى حجم الشركة الراعية للبرنامج, هي محركات جيدة و قوية و لكنها بالمقابل (النقود) .

محركات نصف تجارية : هي غالبا ما كانت أعضاء من مطورين أحرار و شاء رب العالمين لأن يغير هؤلاء من سيرتهم , فلربما كان الإستمرار في التطوير يدفعهم إلى المال أو السبب هو إعالة عائلاتهم..

محركات حرة : هي تلك المحركات التي لا تجنى من المستخدم وراء ذلك أي شيء.

أما من الناحية البنيوية فتنقسم إلى أقسام:

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

محركات ذات إتجاه مركب: و تحتوي على أعداد مختلفة من المهام , فالمحرك سيكون قادرا على محاكات المياه و النار و الملابس و إستعمال الإنارة الطبيعية و دعم الديناميك وووووو و إحتضان ملفات الماكس أو البلندر أو المايا أو سينما 4 دي.

يجب على كل مطورأن لا يستهين بالرخص التي تقدمها مالكيها, و على رأسهم Microsoft .

1

تخيل, هل سيكون مستقبل الأوبن جي أل مع البشرية هكذا

future.jpg
#18

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

هناك اشياء اكثر اهمية

تم تعديل هذه المشاركة بواسطة fouad2008 في 4 يوليو 2012 في 00:15

#19

ما رايكم ب asm . :mellow:

#20

مشكوووووووووووووووووووووورر :lol: :lol: :lol: :lol: :lol: :lol: :lol: :lol: :lol: :lol: :lol: :lol: :lol: :lol: :lol:

ِِAmmar Hero

#21

عفوا صديقي  اولا مقالتك جميلة جدا لكن ليس معنى هذا ان السي بلس او السي هي كل شئ في البرمجة وباقي اللغات لاشئ !

 

اولا سي شارب تعتبر الاكثر استخداما وشعبية في محركات الالعاب العملاقة ومنهم Unity وطبعا Xna ، والكثير مثلي يفضل لغات الانظمة الحرة مثل البايثون في معظم اعمالهم ومشاريعهم وتتوفر لهم الكثير جدا من المكتبات التي تساعدهم على هذا ويمكنك حتى انشاء اللعاب تجارية عالية جداً وافضل دليل تلك اللعبة الشهيرة بمستخدمين بلندر جيم انجن ، يبدوا ان لغة البايثون فاشلة بسبب ذلك العمل ههه

 

والعجب ليس كونها مجرد لعبة عملاقة مفتوحة  المصدر فقط ! بل ايضا في الموقع الرسمي دروس تعليمية كثيفة لإتاحة الفرصة لانشاء لعبة مثلها او التعديل عليها

 

وانا عن نفسي قد اكون مولع باللعاب 2d التي يمكنني انشائها بواسطة مكتبة pygame ومنها اوفر الكثير من الاكواد التي قد اكتبها بالسي بلس

 

وليس معنى هذا ضعف لغة السي او فشلها بل العكس في الاول والاخير تعتبر هي ام اللغات

تم تعديل هذه المشاركة بواسطة medo95 في 14 فبراير 2013 في 04:33

(: PyGame is my live


 


Pygame_logo-590x177.jpg


#22
علاء هماش كتب:

السلام عليكم

أود أن أوضح بأن الكثيرين يربطون تلقائيا استخدام ++C في برمجة الألعاب باستخدام ديريكت اكس او اوبن جي ال. و بالطبع فإن هذا غير صحيح لأنه يمكنك ان تستخدم ++C في برمجة الألعاب من دون الحاجة لمعرفة أي شيئ عن DirectX أو Opengl. و هذا تماما ما قصدته في مقالتي القصيرة. نصيحتي هي استخدام ++C مع يونيتي و مع UDK و مع Ogre و Panda3D و غيرها من محركات الألعاب عوضا عن استخدام بايثون او اي لغة أخرى.

 

oO" اسف كيف يمكنني استخدام  c++ مع اليونتي ؟؟ اللغات المدعومة c# Boo javaScript

(: PyGame is my live


 


Pygame_logo-590x177.jpg


#23
اقتباس

يعني انت لو استخدمت الـ C# مع Unity3d مثلا اصبحت تابع للغرب .. لكنك لو استخدمت الـ C++ لن تصبح تابعا لهم ؟؟ 

ماشاءالله نظرية غريبة جدا ..

 

للأسف لم اشاهد تعليقك عليا إلا الآن 

الذي قصدته أعمق من الذي ذكرته فانا لو دققت في كلامي تلكمت بصفة عامة ولم أتكلم عن مكتبة أو عن تقنية معينة 

أجبني بالله عليك هل رأيت أحد يصنع لعبة ولا يعرف أصا كيف يبرمج برنامج بسيط من غير أخطاء ؟؟

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

هل عرفت ما أقصد يا اخي الطيب 

#24
bilal2005 كتب:

للأسف لم اشاهد تعليقك عليا إلا الآن 

الذي قصدته أعمق من الذي ذكرته فانا لو دققت في كلامي تلكمت بصفة عامة ولم أتكلم عن مكتبة أو عن تقنية معينة 

أجبني بالله عليك هل رأيت أحد يصنع لعبة ولا يعرف أصا كيف يبرمج برنامج بسيط من غير أخطاء ؟؟

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

هل عرفت ما أقصد يا اخي الطيب 

 

 

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

 

برمجة الألعاب لها مشاكلها والتي من الممكن أن يحلها مبرمج الألعاب

بينما مبرمج البرامج لا  يستطيع أن يحلها وكذلك العكس صحيح

 

تحياتي  ^_^

رجعت ومازال الفريق خاملاَ  :( 


 


abPuw.1.gif

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…