الشبكة العربية لمطوري الألعاب

خبير  أحمد عزالدين مشاركة 11

السلام عليكم جميعا 😄

ان شاء الله سأحاول المشاركة بالكتابة في المقالات الثلاث الاتيه:

1- مدخلك في تحليل أداء واكتشاف مشاكل برامج الرسوميات باستخدام الاداة PIX
كما انه لا غني لأي مبرمج عن أداة اكتشاف الاخطاء والمشاكل البرمجية Debugger فانه لا غني لأي مبرمج رسوميات عن اداة تحليل الاداء واكتشاف المشاكل البرمجية ، هذه المقالة تلقي نظرة عن ابسط الطرق لتحليل برمجيات الرسوميات المعتمدة علي مكتبة DirectX كما انها تذكر ايضا بعض الادوات الاخري والتي قد تستخدم مع مكتبات اخري وتحاول المقالة شرح الاداة PIX بأسلوب مبسط كما تتعرض ايضا لكيفية استخدام PIX Event Markers وهي طريقة تتيح لك تحديد اجزاء محددة من الكود فقط لتقوم بتحليلها بدلا من الغوص في تحليل كامل البرنامج الرسومي الذي تعمل عليه.

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

3- تعلم اشهر خورازميات البحث عن افضل مسار والمنتشرة جدا في الكثير من برامج الذكاء الاصطناعي مع الخوارزم *A
لا تخلو تقريبا معظم الالعاب ولو من جزء بسيط من احدي نكهات الذكاء الاصطناعي لاضفاء واقعية الي اللعبة ، ولابد أنك استنتجت ان العديد من الالعاب والبرامج تعتمد بشكل او بآخر علي علم ال Path Finding لايجاد (أفضل) مسار في اي بيئة نريدها ولكننا هنا سنتعرض الي الخوارزم الاكثر انتشارا للبحث عن أفضل مسار والخوارزم الذي يناسب الكثير من التطبيقات والمستخدم بكثرة بشكل أو بآخر حتي في الالعاب الكبيرة هذه الايام حيث سنتعرض للكثير من المواضيع التي تخص البحث عن أفضل مسار مثل اختيار البيئة المناسبة واختيار طريقة التمثيل المناسبة بل وحتي سنتعرض ولو بالفكرة لاحد المواضيع المتقدمة مثل ال Hierarchical Path Finding - فأرجو أن تكونوا معنا 😄

هناك الكثير من الافكار ولكني اخترت بعضها واتمني ان يكون اختياري مناسبا للكثيرين
والسلام عليكم

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

محترف مشرف عبد اللطيف حاجي علي مشاركة 12

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

2. كيف تبرمج "حقيقة" بلغة C++ للمبرمجين بلغة C: تتحدث هذه المقالة عن الاختلافات بين لغة C ولغة C++ و الطريقة الصحيحة في تنفيذ معظم العمليات الممكنة بلغة C على لغة C++. كما تستعرض العادات السيئة التي يقوم بها مبرمجو لغة C عندما ينتقلون للغة C++ وآثارها السلبية المباشرة والغير مباشرة.

عبد اللطيف حاجي علي
مبرمج
In|Framez

موهوب  عبدالله الشمّري مشاركة 13

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

--
طالب - تخصص نظم معلومات .
--

خبير  سلوان الهلالي مشاركة 14

المقالات التي سأشارك بها:
 
I) حركة الشخصيات ثلاثية الأبعاد: لديك شخصية متحركة تم عملها بإستخدام أحد برامج التصميم ثلاثي الأبعاد المعروفة، تحاول إضافة الشخصية إلى لعبتك، سرعان ما تكتشف إن المسألة أصعب من ما تصورت، Direct3D لم يساعدك كثيراً، ومصدّرات ملفات X تسبب لك الكوابيس بسبب النتائج العجيبة التي تظهر عند تشغيل الملف الناتج، والكلام هنا يدور حول الحركة البسيطة... ماذا لو أردت إضافة حركة الملابس؟ أو سلاسل حركية معقدة مثل التغيير بين المشي والركض بشكل تدريجي وواقعي؟
ما العمل الآن؟ هل تستسلم؟ كلا أبداً!
في هذه المقالة، سأستعرض التقنيات والمزايا التي يجب دعمها من قبل عناصر المشكلة لكي يمكن وصف الحل النهائي بأنه "عصري"، وسيكون هدف المقالة الوصول للحلول وتطبيقها بطريقة فعّالة، وفي نهاية المطاف، إضافة الشخصية المتحركة إلى لعبتك.
(سأستخدم مكتبات مفتوحة المصدر لتحقيق الهدف، وسأحاول جعل الحلول مناسبة سواء تم إستخدام Direct3D أو OpenGL)
 
II) عالم المضلعات: سلسلة من المقالات التطبيقية التي ستغطي أساسيات Direct3D9 مكتوبة بإسلوب بعيد عن الترجمة الحرفية، وموجهة للشباب العربي الراغب في تعلم Direct3D9.
حتى هذه اللحظة، خطة العمل شكلها كالآتي:
 
1. الجولة 1: وندوز و DirectX  (نظرة سريعة على وندوز 32 و DirectX)
2. الجولة 2: عالم المضلعات  (الـRendering Pipeline  وكل ما يتعلق به من أساسيات)
3.  الجولة 3: تحضير Direct3D  (خطوات تحضير وتهيئة Direct3D)
4.  الجولة 4: أسطورة المثلث  (مقدمة لـ  vertex buffersوعمل التطبيق الأول لرسم مثلث)
5.  الجولة 5: الرسم بريشة Direct3D  (الخوض في تفاصيل vertex buffersو  index buffers و الـ flexible vertex formats)
6.  الجولة 6: ماذا عن الألوان؟
7.  الجولة 7: إستعداد... أكشن... إضاءة!  (المواد, الضوء وأنواعه)
8.  الجولة 8: الملابس والإكساءات  (الإكساءات)
9.  الجولة 9: المجسّمات تدخل المعادلة  (كيفية التعامل مع الـ Meshes وتحميل ملفات X)
10.  الجولة 10: الضّباب  (fog)
11.  الجولة 11: كيف تكتب إسمك في 10 أيام  (كيفية كتابة النصوص بعدة طرق)
12.  الجولة 12: الشفـّافية  (blending)
13.  الجولة 13: المزيد من الإكساءات  (multi-texturing, cube-maps,...)
14.  الجولة 14: المظلـّلات ولغة HLSL  (أنواع المظللات وفوائد كل منها, موجز سريع حول لغة HLSL)
15.  الجولة 15: برامج الـ vertex
16.  الجولة 16: برامج الـ pixel
17.  الختام
18.  الملحق 1: قاموس المصطلحات
19.  الملحق 2: إعداد بيئة التطوير
·        Visual Studio .NET
·        Visual Studio 6
·        DevC++
·        Code::Blocks
20.  الملحق 3: رياضيات الألعاب
·        المتجهات
·        المصفوفات
·        السطوح
·        الشعاع
·        الـ Quaternion
 
.......... 😖  😢  😭
أجل، من المستحيل كتابة كل ذلك في غضون شهرين، لذلك فسوف أركز على مقالة حركة الشخصيات ثلاثية الأبعاد، لأنها .. feasible؟ أما سلسلة عالم المضلعات فسأحاول إكمال أكبر عدد من المقالات منها خلال الشهرين القادمين، وسأقدم المقالات التي أكملتها عندما يحين الوقت، سأكون سعيداً جداً إن وصلت للجولة 12... 😋
هل ستكون السلسلة الغير كاملة مقبولة في المسابقة؟ أم أحاول العثور على موضوع آخر؟ 😒
 
شكراً لكم

خبير مدير وسام البهنسي مشاركة 15

في 27 مارس 2009 10:49 ص، غمغم سلوان الهلالي باستغراب قائلاً:

هل ستكون السلسلة الغير كاملة مقبولة في المسابقة؟ أم أحاول العثور على موضوع آخر؟ 😒

لا يوجد في الشروط ما يمنع تقديم عمل "غير كامل". لكني أتوقع أن يأخذ القراء هذا النقص كنقطة ضدك. الأمر متروك لك ☺

وسام البهنسي
مبرمج في إنفيديا وإنفريمز

خبير  سلوان الهلالي مشاركة 16

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

خبير مدير وسام البهنسي مشاركة 17

السلام عليكم ورحمة الله،
 
انتهى موعد تسجيل الاشتراك في المسابقة اليوم، وننتقل الآن إن شاء الله إلى المرحلة الثانية من المسابقة، وهي تأليف المقالات وطرحها على الجمهور لقراءتها.
 
نشكر أولاً جميع المشتركين على حماسهم وإقدامهم، وللجميع منا أطيب التمنيات بالتوفيق.
 
تذكروا أن هناك عدد لا بأس به من المشاركات، لذلك نودّ أن نشجع الجميع على طرح مقالاتهم بأسرع ما يمكن لأن ذلك سيعطي الجمهور فرصة أكبر لقراءة المقالة وتحكيمها. فلو طرحت المقالة في آخر لحظة، فإن الجمهور قد لا يكون لديه الوقت لمطالعتها، وبالتالي سيقل عدد المصوتين لمقالتك.
 
 
نراكم في موضوع المشاركات:
 
http://www.agdn-online.com/communities.aspx?view=posts&threadid=519
 
يمكنكم طرح أي استفسارات عن المسابقة في الموضوع:
 
http://www.agdn-online.com/communities.aspx?view=posts&threadid=521
 
بالتوفيق! 😄

وسام البهنسي
مبرمج في إنفيديا وإنفريمز