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

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

السلام عليكم،
 
هذه المهمة أيضاً مبدئية وبسيطة، لكنها ستضفي عمقاً كبيراً للعبة.
 
المنفذ: عمار حرفوش.
 
مدة التنفيذ: 7 أيام.
 
المطلوب هو تشغيل موسيقى خلفية أثناء لعب المرحلة في اللعبة. الموسيقى يجب أن تكون بصيغة مضغوطة WMA أو MP3، ويجب أن يتم تشغيلها بطريقة دفقية streaming وليس عن طريق تحميلها كاملة في الذاكرة.  الموسيقى يجب أن تكون قابلة للإعادة أيضاً loopable.
 
عند إنهاء المهمة ارفع تعديلاتك إلى النسخة المركزية في كود بليكس. تأكد قبل الرفع من عمل اللعبة بشكل سليم، ولا تنسى رفع ملف الموسيقى مع التعديلات. مكانه المناسب في مجلد Game\Content\Audio. اتفقنا؟
 
بالنسبة للمادة اللحنية فيمكنك مبدئياً سحب موسيقى اللعبة الأصلية واستخدامها. لكني أدعوك للبدء بمقطوعة جديدة من تأليفك لتكون موسيقى خلفية المرحلة. أعتقد أن خيار الموسيقى الإلكترونية مناسب هنا. المشاعر المطلوبة هي الحماس والانطلاق بالدرجة الأولى. لك الحرية في تحديد إن كانت الموسيقى قاتمة أو بهيجة.
 
وسنكون بانتظار سماع المحاولات الأولى إن شاء الله.

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

مبتدئ  DoomAngel مشاركة 2

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

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

مع الشكر الجزيل وتمنياتي بالتوفيق للجميع..

مبتدئ  عمّار حرفوش مشاركة 3

حسنا قمت بأول محاولة معتقدا ان الامر بسيط ... لكن لم اتعمق كثيرا في الـ xna بعد.

اولا كنت اريد كتابة وحدة الموسيقى بحيث يقوم بالانتقال من موسيقى لاخرى بشكل سلس ... transition و هي عملية بسيطة حسابيا.
لكن واجهتني عدة مشاكل الاولى هي ان وحدة الـ MusicPlayer في الـ xna لا تقبل ان تشغل اكثر من موسيقى واحدة في نفس الوقت و احتاج ذلك لعمل الـ transition.

هنا خطر ببالي حلين الاول استخدام الـ SoundEffect لكن اعتقد انه غير عملي في حال الموسيقى حيث انه يبقى كامل معلومات الصوت في الذاكرة
و الحل الاخر كان استخدام الـ directx و بالفعل برمجت كل شيء باستخدام مكتبة DirectX.AudioVideoPlayback
لكن كان علي ان الغي خيار os lock في خيارات الـ debug لتعمل ... و لست متأكد بعد من فعاليته.

و الخيار الثاني هو استخدام مكتبة من المكاتب المتوفرة للدوت نيت لقرائة ملفات الموسيقى دون الحاجة لتحويل صيغة الملفات باستخدام الcontentmanager و هنا اعتقد ان مكتبة irrklang مناسبة.

او اعود لل MusicPlayer و استغني عن خاصية الـ transition و استبدلها باخفاض صوت الموسيقى بشكل تدريجي و ابدل الموسيقى ثم ارفع الصوت مرة اخرى بشكل تدريجي.

و هو اللذي فعلته مبدأيا.
لكن لاحظت ان البرنامج يتجمد قليلا عند تحميل ملف الموسيقى.

فما رأئيكم بالموضوع؟

و بالنسبة لـ doom angle


في 03 يوليو 2010 08:41 م، قال DoomAngel بهدوء وتؤدة:

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


في 03 يوليو 2010 08:41 م، عقد DoomAngel حاجبيه بتفكير وقال:

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

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

عمل رائع يا عمار،


في 23/رجب/1431 06:57 م، عقد عمّار حرفوش حاجبيه بتفكير وقال:

لكن لاحظت ان البرنامج يتجمد قليلا عند تحميل ملف الموسيقى.

حسناً، هذا متوقع. تستطيع في بداية المرحلة فتح كافة الملفات الموسيقية التي ستشغلها، وتركها في وضعية التوقف. هكذا عندما تريد تشغيل ملف في المرحلة فإن كل ما عليك فعله هو نداء إجراء Play فقط (أو Seek أولاً للبدء من البداية).  هذا أسرع بكثير من فتح الملف. 
جرب وأخبرنا بالنتائج...
 
 
شكراً

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

مبتدئ  عمّار حرفوش مشاركة 5

أما في 05 يوليو 2010 04:04 ص، فقد تنهد وسام البهنسي بارتياح وهو يرد:

عمل رائع يا عمار،

شكرا لك 😄



في 05 يوليو 2010 04:04 ص، غمغم وسام البهنسي باستغراب قائلاً:

حسناً، هذا متوقع. تستطيع في بداية المرحلة فتح كافة الملفات الموسيقية التي ستشغلها، وتركها في وضعية التوقف. هكذا عندما تريد تشغيل ملف في المرحلة فإن كل ما عليك فعله هو نداء إجراء Play فقط (أو Seek أولاً للبدء من البداية).  هذا أسرع بكثير من فتح الملف. جرب وأخبرنا بالنتائج...

هذا ما قمت به ... و نجحت العملية.

لكن حاولت رفع اضافاتي ... لكن ايضا واجهتني نفس المشكلة السابقة ... جربت عم Pull ثم push و لم ينفع و حتى الـ update لم يعمل...
ثم لاحظت انه في الخطأ اللذي يظهر يقترح ان اقوم بعمل merge ... وقمت بالبحث عنه ثم وجت merge with عند الضغط على اخر تعديل موجود على السرفر و اللذي هو للفيديو ... و بعدها قبل الـ push لكن لم استطع الحصول على اخر التعديلات في جهازي ...

مبتدئ  عمّار حرفوش مشاركة 6

حسنا اعتقد اني ارتكبت خطأ ما! ... اخر نسخة موجودة على السيرفر لا تتضمن
تعديل الاخ mshbeab

لا اريد التخبيص اكثر ... لذا ساترك هذا الموضوع لكم ☺


غدا ساقرأ المزيد من المعلومات عن نظام عمل tortoiseHG لكي افهم طريقة عمله بالضبط!


قمت بدمج النسختين على جهازي يدويا, و يبدو ان تحميل الموسيقى يعيق عملية
تشغيل الفيديو.

حيث البرنامج لا يتجمد مباشرة, ربما يقوم بالتحميل مع سير عمله, مما يؤدي
الى تعطيل الفيديو.

سأقوم ببعض التجارب غدا للتوصل الى حل مثالي.

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

حسناً، لا بأس. تابع العمل واقرأ المزيد عن TortoiseHg. أودّ أيضاً أن ألفت انتباهك لموضوع التعليقات في الكود. لا تبخل بها علينا، فليس الجميع قادرون على فهم الكود من مجرد النظر إليه ☺

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

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

عمار، ما هي آخر الأخبار لديك؟

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

مبتدئ  عمّار حرفوش مشاركة 9

اسف على الانقطاع ... كنت منشغلا بالامور الحياتية!

المهم قمت باضافة كومنتات لوحدة الموسيقى كما طلبت

و اليوم بدأت بانشاء مقطوعة موسيقية لاحدى المراحل ... أرفقت ما انجزته منها, ليست نسخة نهائية.

سأهتم بالموسيقى في المرحلة القادمة, الا في حال أرتم ان اقوم بتعديل وحدة الموسيقى ريثما يتم الانتهاء من الوحدات الرئيسية للعبة.

سأقوم بعمل عدة ألحان ليتم الاختيار الأنسب منها للعبة.

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

ممتاز! شكراً لك...
 
لقد استمعت للمقطع الموسيقي، وأعتقد أنه على الطريق الصحيح. أقترح أن تتم إضافة بعض الصدى القصير reverb وربما صدى رباعي خفيف echo لزيادة الإحساس بالاتساع والفراغ والمساحات الشاسعة في الفضاء. فالموسيقى كما هي الآن حادة ومباشرة.
 
شكراً لك!!

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