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

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

السلام عليكم

كنت قد حضرت قبل أيام مؤتمر ميكروسوفت للمطورين فى مصر
والذى انتهت فعالياته يوم 14 ابريل وللمزيد عن المؤتمر والمحاضرات التى عرضت فيه يمكنكم زيارة الموقع www.edc2008.com

ومن ضمن هذه المحاضرات محاضرة تتحدث عن building new modern UI applications using MFC
وكانت هذه المحاضرة تركز على استخدام ما يسمى بـ Visual C++ 2008 Feature Pack Release
وموقع تحميل هذه الحزمة الجديدة والتى تعتبر الطريقة الوحيدة حاليا لبناء تطبيقات تأخذ شكل Office2007 باستخدام السي بلس بلس هو:
http://www.microsoft.com/downloads/details.aspx?FamilyId=D466226B-8DAB-445F-A7B4-448B326C48E7&displaylang=en

هذه الحزمة الجديدة تحتوى أيضا على  Implementations لبعض المزايا الجديدة والتى ستكون فى الاصدار الجديد من ال C++ Standard
يمكنكم قراءة البيانات التفصيلية فى صفحة تحميل الحزمة المذكورة

كنت أود أيضا ذكر الموقع التالى على سبيل الاستفادة من مؤتمر GDC2008
http://www.gamedev.net/community/forums/topic.asp?topic_id=490843

وان شاء الله نتناقش معا فى أى تعليقات عليها
وجزاك الله خيرا
والسلام عليكم

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

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

السلام عليكم

أيضا من ضمن المحاضرات التى حضرتها والتى كانت تتحدث عن الجديد فى السي بلس بلس 2008 أو بمعنى اكثر دقة الجديد في VC++2008

كان المحاضر Boris Jabes وهو فى فريق ال visual c++ team قد ذكر الاتى:

يمكننا وينصح بشدة أن نستخدم ال compiler switchs التالية وذلك لعدة أسباب:
 first: security compiler switches:-
/GS
هذا السويتش مسئول عن الحماية من اخطاء ال overflow

/SafeSEH
هذا السويتش مسئول عن زيادة أمان ال security error handling

(DEP) /NXCOMPAT
هذا السويتش يمنع تنفيذ أى كود تم حقنه فى أي مكان data فى الاصل
مثلا اذا كان لدينا صورة فأنها تحتوى على قسم data ويمكننا حقن هذا القسم بكود ما يتم تنفيذه عند قراءة بيانات الصورة
ويتيح لنا المترجم هذا السويتش لل data execution prevention
لاننا فى الاغلب لا نريد تنفيذ الاوامر من ال data section ولكن بدلا من ذلك نريد تنفيذها فقط من ال code space section

أيضا ذكر موضوع ال fast compilation خصوصا مع وجود عدة CPUs وقد تحدث عن الاتى
From Project Properties >> C/CC >> CommandLine >> Additional Options
يمكننا اضافة الاتى السويتش الاتى:
/MP or /MPn
حيث n هى عدد ال CPUs الموجودة

ايضا تم اضافة دعم للـ class diagram فى الفيجوال سي بلس بلس 2008 حتى يمكننا ان نري العلاقات بين ال classes مرئيا
وهذه الميزة رائعة بحق ولم تكن موجودة الا في ال C# فقط فى الاصدار السابق

الان ايضا تم اضافة دعم استخدام مكتبة ال STL مع ال CLR وذلك لزيادة العلاقة بين ال Native/Managed C++ Code
هناك أسلوب أيضا لتمرير متغيرات من نوع managed الى كود ال native والعكس وذلك باستخدام اسلوب ال marshling
مثل تمرير متغير من نوع String من الكود المدار managed واستقباله كـ Native C++ Char* pointer
ولكن هناك بعض التحويلات التى لا بد ان تتم والتى يمكنكم قراءة المزيد عن ذلك بالبحث فى ال msdn وأعتقد ان كتب ال C++/CLI تتحدث عن ذلك

ايضا هناك موضوع ال shared pointers وهو موضوع جديد سيكون جزء من ال next c++ standard وهو يتيح لنا حفظ تجمع من الكائنات بدلا
من حفظ تجمع من مؤشرات الكائنات والتى قد تسبب لنا مشاكل مستقبلية فى الكودblogs.msdn

يمكنكم معرفة المزيد والنقاش ايضا على ال blog الخاص بهذا المحاضر على العنوان الاتى:
http://blogs.msdn.com/borisj

هذا تقريبا ملخص للمحاضرة
وانتظروا قريبا خبر وضع كافة المحاضرات فيديو الخاصة بالمؤتمر وذلك من قبل الادارة المنظمة للمؤتمر هنا فى مصر
والسلام عليكم

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

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

بتاريخ 17 ابريل 2008 08:32 ص، قطب ahmed ezz حاجبيه بشدة وهو يقول:

أيضا ذكر موضوع ال fast compilation خصوصا مع وجود عدة CPUs وقد تحدث عن الاتى
From Project Properties >> C/CC >> CommandLine >> Additional Options
يمكننا اضافة الاتى السويتش الاتى:
/MP or /MPn
حيث n هى عدد ال CPUs الموجودة

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

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