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

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

كنت أشاهد اليوم فلماً على القناة 9 في الـ MSDN عن الإصدار التجريبي من Silverlight، وبعد ما رأيته من إمكانيات متقدمة في هذه الوحدة البرمجية، خطرت لي فكرة اعتماد هذه التقنية، أو بالأحرى تقنية WPF أو Windows Presentation Foundation لبناء وتنفيذ واجهات الألعاب التفاعلية UI!
هذا يعني أن المصممين سيتعلمون الآن برنامجاً جديداً بدلاً من فلاش، ويدعى إكسبرشن ستوديو Expression Studio، يتيح تصميم أجزاء الواجهة بسهولة، مع تقديم طريقة لبرمجة تلك الواجهات ببساطة باستخدام لغات NET.
 
هل سمع أحدكم من قبل ببرنامج Expression Studio أو تعامل معه؟ أريد أن أسمع أية آراء عنه، فالفكرة أعتقد أنها رائعة!
 
لمن يريد رؤية الفلم، هذا هو الرابط:
http://channel9.msdn.com/Showpost.aspx?postid=388355
(ستحتاج إلى تنصيب SilverLight على جهازك من أجل رؤية الفلم، وحجم التحميل تقريباً 5 ميجا، أما الفلم فحجمه ضخم طبعاً، على مبدأ يو تيوب)

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

خبير مشرف مؤيد مارديني مشاركة 2

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

أجد معك أن هذه الفكرة رائعة، استعمال منصة WPF لبناء الواجهات التفاعلية للألعاب و البرامج بشكل عام، و هذا أقل ما يمكننا عمله باستخدام هذه المنصة القوية و التي يمكنها التعامل ليس مع الـ2D فقط، بل مع الـ3D أيضاً.

ما يكفينا من كل المجموعة لبناء الواجهات التفاعلية هو الـExpression Blend و ربما الـExpression Design معه، عندما تقوم بتحميل البليند، ستجد معه خمس أو ست أمثلة مرفقة منفذة باستخدام WPF، و ستجد بنفسك قوة و جمال هذه الأمثلة، من الطريف أن جزء من واجهات بليند تم تصميمها باستخدام بليند نفسه☺

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

ناحية أخرى جميلة في بليند (لا أعرف إن كانت موجودة في فلاش أيضاً)، هي إمكانية استخدام الـResources، فمثلاً يمكنك تصميم زر و استخدامه في كل واجهات اللعبة، ثم تقوم بتعديله في مكان واحد ليتم تعديله في كل الواجهات.

يمكنك أيضاً تخصيص ملف XAML لكل عنصر ليتم استخدامه في الألعاب الأخرى أو من قبل المصممين الآخرين، مما يعطيك قابلية لإعادة استخدام التصميم أو للتعديل المستقبلي عليه بسهولة كبيرة.

هذا ما خطر ببالي الآن...

بالمناسبة، تم طرح Expression Blend 2.5 March 2008 Preview منذ بضعة أيام، و الميزة الوحيدة الجديدة في هذا الإصدار هي دعم Silverlight 2، ها هي وصلات تحميل بليند الجديد و الستديو الجديد :
http://www.microsoft.com/downloads/details.aspx?FamilyID=32a3e916-e681-4955-bc9f-cfba49273c7c&DisplayLang=en
http://www.microsoft.com/downloads/details.aspx?familyid=BBE5A30B-E95E-4B0D-A7C6-6367CDD2A9EF&displaylang=en

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

Moayad Mardini,
MSDN Forums Moderator

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

وفي 08 مارس 2008 02:52 ص، أعرب مؤيد مارديني عن رأيه بالموقف كالآتي:

من الطريف أن جزء من واجهات بليند تم تصميمها باستخدام بليند نفسه☺

هاها.. هذا ديدن البرامج الناجحة. نفس الحال مع فيجوال ستوديو، والذي يتم بناؤه بفيجوال ستوديو أيضاً☺



في 08 مارس 2008 02:52 ص، قال مؤيد مارديني بهدوء وتؤدة:

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

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

 

في 08 مارس 2008 02:52 ص، عقد مؤيد مارديني حاجبيه بتفكير وقال:

ناحية أخرى جميلة في بليند (لا أعرف إن كانت موجودة في فلاش أيضاً)، هي إمكانية استخدام الـResources، فمثلاً يمكنك تصميم زر و استخدامه في كل واجهات اللعبة، ثم تقوم بتعديله في مكان واحد ليتم تعديله في كل الواجهات.

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

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

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

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

خبير مشرف مؤيد مارديني مشاركة 5

في 14 آذار 2008 11:59 م، عقد همام البهنسي حاجبيه بتفكير وقال:

مثلاً ماهي قدراته في التحريك ثنائي الأبعاد؟ مثلاً في تحريك الشخصيات والمشاهد؟؟؟ أو في لتصميم وتنفيذ الألعاب البسيطة مثل التي نراها على الفلاش؟هل بيئته بسيطة وتقدم نفس مزايا التحريك التي يقدمها الفلاش؟؟؟

لن أستطيع القيام بمقارنة تقنية بما أنني لا أعرف شيئاً عن الفلاش، و لكن Jesse Ezell يقول في مدونته (http://weblogs.asp.net/jezell/archive/2007/05/03/silverlight-vs-flash-the-developer-story.aspx) أن نظام WPF أسهل و أدق من فلاش (بما أنه يعتمد على الزمن و ليس على الـFrames).

ما شاهدته بنفسي بالنسبة لـWPF هو مستوى ممتاز من التحريك بالنسبة لرسوميات الـ2D و مجسمات الـ3D البسيطة، أنصحكم مرة أخرى برؤية أمثلة برنامج Blend لتروا بأنفسكم، و بالنسبة للألعاب، بدأ مجتمع WPF و Silverlight بالفعل بإنتاج بعض الألعاب المبنية على هاتين المنصتين (و هناك بعض مواقع الألعاب الجديدة التي تهتم بهذه المنصة فقط) ليثبت أن هذه المنصة لا تقل شيئاً عن مثيلاتها، فمثلاً أصبح هناك بعض الألعاب البسيطة مثل ألعاب الورق، البلياردو، سودوكو، متاهات، شطرنج، تيترس، ...، حتى أن هناك بعض مشاريع محركات الفيزياء في برمجة ألعاب WPF، لذلك أعتقد أن ما تحتاجه هذه المنصة لتطغى على الفلاش هو بعض الوقت، و أظن أننا بمرور الوقت سنجد ألعاباً أقوى من الألعاب المبنية على منصة فلاش.

يبدو أن أدوبي بدأت تحس أنها  في وضع لا تحسد عليه، لهذا قامت بإطلاق مشروع "C/C++ to ActionScript Compiler" و الذي أتاح تشغيل Quake 1 على منصة الفلاش☺

Moayad Mardini,
MSDN Forums Moderator

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

شكراً على وصلة المقارنة... ولكن أتمنى لو كانت هناك وصلات لأمثلة تحريك 2D منفذة على الإكسبرشن استديو مثل مقاطع "Happy Tree Friends" على سبيل المثال أو وصلات لألعاب بسيطة بحيث توضح ما يمكن إنجازه على هذا البرنامج...

خبير مشرف مؤيد مارديني مشاركة 7

بتاريخ 15 آذار 2008 11:32 ص، قطب همام البهنسي حاجبيه بشدة وهو يقول:

شكراً على وصلة المقارنة... ولكن أتمنى لو كانت هناك وصلات لأمثلة تحريك 2D منفذة على الإكسبرشن استديو مثل مقاطع "Happy Tree Friends" على سبيل المثال أو وصلات لألعاب بسيطة بحيث توضح ما يمكن إنجازه على هذا البرنامج...

همم، لم أردك أنك تقصد أفلام الرسوم المتحركة☺
في الحقيقة لم أرَ أية Animation بهذا التعقيد منفذة باستخدام Expression Studio، فغرض البرنامج الأساسي هو بناء التطبيقات، سواء تطبيقات ويندوز أو الويب، سواءً على منصة Silverlight أو WPF، و لكن هذا لا يعني أنه غير ممكن، فقط نحتاج إلى بعض الفنانين و بعض الوقت كما قلت.

قم بالاطلاع على الموقع التالي، ففيه بعض الألعاب الجيدة المنفذة بـWPF و Silverlight و هي على درجات متفاوتة من الإتقان :
http://www.wpfwonderland.com/games/gameshome.aspx




دعوني أقول بدون تحيز أنني لم أرَ أية تطبيق يستغل كل إمكانيات و ميزات هذه المجموعة الرائعة من البرامج، فلا تحكموا عليها بسرعة☺

Moayad Mardini,
MSDN Forums Moderator

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

أعتقد أن مايكروسوفت قادرة على تجهيز أمثلة هامة لتطبيقات الـ Animation دون الحاجة لانتظار الفنانين المتحمسين لإنجاز أعمال مميزة باستخدام برنامجها. ولكن يبدو أن مايكروسوفت كالعادة تغفل الاستثمارات الفنية لبرامجها الأمر الذي أعتقد أنه سيجعل للفلاش نقطة تميز لصالحه نظراً لانتشار استخدامه في هذه المجلات إضافة لوجود عدد من برامج التحريك الهامة التي تدعم صيغة swf ضمن خط انتاجها الرأيسي، كمثال انظر للصيغ المدعومة في خط انتاج أحد برامج الرسم والتحريك الكبيرة:
http://www.toonz.com/htm/products/prod52Hwork.htm
 
لا تقلق لن أحكم عليه بسرعة لأنه بكل حال لا يمكن مقارنته مع الفلاش الذي لديه تاريخ طويل في هذا المجال. علينا أن ننتظر☺