دليل مستخدم SONiVOX JETCreator

تطبيق تأليف المحتوى لـ JET Interactive Music Engine

1 مقدمة

1.1 نظرة عامة

يحتوي هذا المستند على إرشادات المستخدم لـ SONiVOX JET Creator، وهو تطبيق تأليف لإنشاء ملفات JET واختبارها. JET هو مشغل موسيقى تفاعلي للأجهزة الصغيرة المدمجة، بما في ذلك الأجهزة التي تعمل بنظام Android الأساسي. تتيح هذه التقنية للتطبيقات تضمين مقاطع صوتية موسيقية تفاعلية، بتنسيق MIDI، تستجيب في الوقت الفعلي لأحداث تشغيل الألعاب وتفاعل المستخدمين.

يعمل JET جنبًا إلى جنب مع أداة مزج الصوت المُضمَّنة (EAS) من SONiVOX، وهو جهاز تشغيل MIDI لنظام Android. يتم دمج محركَي JET وEAS في نظام Android الأساسي المضمَّن من خلال فئة JetPlayer، بالإضافة إلى الميزات المتضمّنة في تطبيق JET Creator. وبناءً على ذلك، يمكن لمؤلف محتوى JET أن يتأكد من أن التشغيل سيكون كما هو بالضبط في كل من منشئ JET Creator وتطبيق Android النهائي قيد التشغيل على أجهزة Android الجوّالة.

بالإضافة إلى واجهة المستخدم الرسومية، هناك وظيفتان رئيستان في JET Creator. يتضمن الإجراء الأول جمع كل بيانات المصدر (ملفات MIDI وDLS)، وإضافة سمات JET في الوقت الفعلي، وإنشاء ملف JET (.jet) الذي سيستخدمه تطبيق Android. أما الوظيفة الثانية، تتضمن اختبار أداء عناصر التشغيل التفاعلية كما ستتم في تطبيق Android.

إن تطبيق JET Creator مكتوب بلغة برمجة Python، ولذلك يجب تثبيت الإصدار الحالي من Python وWXWidgets. هناك إصداران Mac وWindows.

1.2 الاختصارات والمصطلحات الشائعة

من المهم استخدام مجموعة شائعة من المصطلحات لتقليل الالتباس. نظرًا لأن JET تستخدم MIDI بطريقة فريدة، فقد لا تكفي مصطلحات المجال العادية دائمًا. وفي ما يلي تعريف للعبارات عند استخدامها في هذه الصفحة وفي تطبيق JET Creator:

القناة: بيانات MIDI المرتبطة بقناة MIDI محدّدة. يتيح جهاز MIDI القياسي 16 قناة من بيانات MIDI، ويرتبط كل منها عادةً بأداة معيّنة.

وحدة التحكّم: حدث MIDI يتكون من رقم قناة ورقم وحدة تحكُّم وقيمة وحدة تحكُّم. وتربط مواصفات MIDI العديد من أرقام وحدات التحكّم بوظائف معيّنة، مثل مستوى الصوت والتعبير والدواسة المستمرة وما إلى ذلك. كما تستخدم أداة JET أيضًا أحداث وحدة التحكّم كوسيلة لتضمين معلومات تحكّم خاصة في تسلسل MIDI لتوفير مزامنة الصوت.

DAW: محطة عمل للصوت الرقمي هو مصطلح شائع لتطبيقات MIDI والتسلسل الصوتي، مثل Logic وSONAR وCubase وغيرها.

EAS: يتم تضمين جهاز مزج MIDI. اسم محرك مُركِّب SONiVOX MIDI.

JET: محرك Jet Interactive. اسم محرك الموسيقى التفاعلي SONiVOX JET.

M/B/T: المقاييس والإيقاعات والمؤشرات

المقطع: مقطع موسيقي مثل جوقة أو مقطع صوتي يمثّل جزءًا من المقطوعة الموسيقية الشاملة. في JET، يمكن أن يكون المقطع ملف MIDI كامل أو مشتقًا من جزء من ملف MIDI.

SMF-0: ملف MIDI القياسي من النوع 0، وهو ملف MIDI يحتوي على مقطع صوتي واحد ولكن قد يتألف من عدة قنوات لبيانات MIDI.

SMF-1: ملف MIDI العادي من النوع 1، وهو ملف MIDI يحتوي على مسار واحد إضافي، ويمكن أن يتألف كل مسار من قناة واحدة أو أكثر من بيانات MIDI. بشكل تقليدي، يتم تخزين كل قناة على مسار منفصل في ملف SMF-1. بالرغم من ذلك، من الممكن أن يكون لديك قنوات MIDI متعددة على مسار واحد أو عدة مسارات تحتوي على بيانات لقناة MIDI نفسها.

المقطع الصوتي: مقطع صوتي واحد في محطة DAW يتضمن تسلسلاً زمنيًا من الأحداث. واحرص على عدم الخلط بين المسارات والقنوات. قد يحتوي ملف MIDI على العديد من المسارات ذات المسارات المتعددة التي تستخدم قناة MIDI نفسها.

2 The JET Interactive Music Concept

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

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

2.1.1 ضغط البيانات

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

2.1.2 مثال على الموسيقى المجدوَلة


الشكل 1: قطعة موسيقية خطية

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

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

2.1.3 مثال على الموسيقى غير الخطية


الشكل 2: قطعة موسيقية غير خطية

في هذا المخطط، نرى قطعة موسيقية غير خطية. السيناريو هو لعبة الرماية من منظور البطل (FPS) وتقدم شركة JET الموسيقى التي تعمل في الخلفية. يتم تشغيل المقدمة أثناء تحميل المستوى ثم الانتقال تحت عنصر تحكم البرنامج إلى شريحة "البحث". يتكرّر هذا المقطع إلى أجل غير مسمّى، ربما مع اختلافات صغيرة (باستخدام ميزة كتم الصوت/إلغاء كتم الصوت) إلى أن يؤدّي النشاط في اللعبة إلى حدوث تغيير.

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

عندما يبدأ اللاعب في قتال مع الوحش، يبدأ البرنامج عملية انتقال متزامنة إلى جزء القتال. ويتكرّر المقطع إلى أجل غير مسمّى مع استمرار القتال. تعمل Bonus Hit مؤقتًا على إلغاء كتم صوت أي مسار زخرفي لإرسال تنبيه إلى اللاعب بمحاولة هجمة ناجحة. كذلك، لم يتم كتم صوت مسار آخر مؤقتًا للإشارة إلى تلقّي اللاعب لضرر خاص.

في نهاية المعركة، تنتقل الموسيقى إلى جزءٍ بالانتصار أو الهزيمة بناءً على نتيجة المعركة.

2.1.4 كتم الصوت/إلغاء كتم الصوت في المزامنة

يمكن لـ JET أيضًا مزامنة كتم صوت المقاطع الصوتية وإلغاء كتمها مع الأحداث في الموسيقى. على سبيل المثال، في لعبة FPS، قد يكون من المستحسن وضع الأحداث الموسيقية المتعلّقة بالمكافآت والأضرار بالقرب من حدث اللعبة الفعلي قدر الإمكان. مع ذلك، قد يؤدي إلغاء كتم صوت مقطع موسيقي عند وقوع اللعبة إلى بدء تشغيل مقطع موسيقي في منتصف الليل. بدلاً من ذلك، يمكن بدء مقطع من البداية، ولكن لن تتم مزامنته مع المقاطع الموسيقية الأخرى.

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


الشكل 3: كتم الصوت/إعادة الصوت المتزامن

2.2 مزامنة الصوت

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


الشكل 4: لعبة موسيقية

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

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

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

3 نظرة عامة على تأليف محتوى JET

لتأليف ملفات JET وسماع تشغيلها بشكل تفاعلي، يعمل مؤلف المحتوى في تطبيقين مصممين للعمل معًا بسلاسة. التطبيق الأول هو أي تطبيق تسلسلي MIDI غير جاهز يتوافق مع مكونات VST (لأجهزة الكمبيوتر الشخصي) أو AU (لأجهزة Mac). هنا سينشئ المؤلف ملفات موسيقى MIDI باستخدام المكون الإضافي كجهاز مزج. التطبيق الثاني هو تطبيق JET Creator. هنا يستورد المؤلف ملفات موسيقى MIDI (ومجموعة صوت DLS2 اختياريًا) ويضبط شروط التشغيل التفاعلي في اللعبة التي تدعم نظام JET. يمكن لمؤلف المحتوى اختياريًا إنشاء مجموعة مخصّصة من أدوات DLS باستخدام محرِّر أدوات يتوافق مع تنسيق DLS المستوى 2. ومن هذه التطبيقات Awave من MJSoft.

يُرجى الاطّلاع على مستند إرشادات تأليف محتوى JET للحصول على تفاصيل إضافية حول تأليف المحتوى.

4 تثبيت وإطلاق JET Creator

JET Creator هو تطبيق بلغة Python، لذلك يجب تثبيت Python وwxPython على جهازك.

تم إنشاء JetCreator واختباره باستخدام:

الإصدار 2.5.4 من Python

wxPython الإصدار 2.8.7.1

يمكن تنزيلها من هنا:

في أجهزة الكمبيوتر الشخصي:

  • http://www.python.org/download/releases/2.5.4/
  • http://www.wxpython.org/download.php

MAC:

  • http://wiki.python.org/moin/MacPython/Leopard
  • http://www.wxpython.org/download.php

بعد تثبيت لغتَي Python وwxPython، ما عليك سوى فك ضغط جميع الملفات في دليل تطبيق JET Creator أو نسخها إلى مجلد على محرك الأقراص الثابتة.

لتشغيل JET Creator، انتقل إلى رسالة طلب الأوامر وعيِّن الدليل على المكان الذي تم تثبيت Python عليه. شغّل python بعد ذلك باستخدام الأمر:

python jetcreator.py

5 استخدام JET Creator

5.1 أنواع الملفات

هناك بعض أنواع الملفات المختلفة المرتبطة بـ JET Creator.

ملف مشروع صانع المحتوى .jtc JET. يحتوي هذا الملف على جميع المعلومات المرتبطة بمشروع JET Creator. عند الحفظ أو الحفظ باسم من JET Creator، يتم حفظ نوع الملف هذا.

ملف .jet JET. يتم إنشاء ملف الإخراج هذا تلقائيًا من JET Creator كلما حفظت مشروع JET Creator. وهو الملف الذي يجمع جميع أصول JET معًا في ملف واحد سيستخدمه تطبيق Android. قدِّم هذا الملف إلى مطوِّر تطبيقات Android.

.mid. وهذا الملف هو ملف MIDI من النوع 1 القياسي الذي سيستخدمه JET Creator لإنشاء المقاطع.

ملف تقسيم .seg. هذا ملف شريحة JET. وله نفس اسم ملف MIDI الذي يشير إليه ولكنه يحتوي على معلومات شريحة إضافية.

.zip وZip ملف أرشيف. عند تصدير أرشيف JET، يتم إنشاء ملف ZIP يحتوي على جميع مواد العرض (الملفات) اللازمة لـ JET Creator. يمكنك استخدام هذا لنقل مشاريع JET Creator إلى أشخاص آخرين.

5.2 فتح مربّع الحوار

عند تشغيل JET Creator لأول مرة، يظهر لك مربع حوار مفتوح مثل ما يلي.

<img <="" Border="0" height="285" p="" src="/static/images/jet/jc_open_dlg.png" width="450" />

سيؤدي النقر على فتح إلى فتح ملف .jtc (ملف JET Creator) الحالي. استخدِم زر المتصفّح للتصفّح للوصول إلى الدليل الذي حفظت فيه ملف .jtc.

جديد: يؤدي هذا الإجراء إلى إنشاء ملف jtc .جديد.

سيؤدي النقر على استيراد إلى استيراد ملف أرشيف JET (.zip).

إلغاء سيؤدي إلى إلغاء مربع الحوار والخروج من التطبيق.

5 نوافذ رئيسية

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

يعرض قسم عرض الشرائح قائمة بالمقاطع الحالية، والتي يتم اشتقاق ملف MIDI منها و(اختياريًا) ملف DLS2 تم اشتقاق كل مقطع منه. كما يعرض أيضًا وقت البدء والتوقف لكل شريحة ويتم تحديد إعدادات العلامة وتبديل موضعها وتكرارها وكتم صوتها.

يوجد أسفل طريقة عرض "تقسيم" عرض الحدث مباشرةً. يعرض قسم "عرض الأحداث" جميع الأحداث المرتبطة بشريحة معيّنة. ولا يتم عرض الأحداث إلا عندما يتم إبراز الشريحة التي تم تعيينهم لها. ويعرض كل حدث نوعه، ونقاط بدايته وانتهائه، وتعقب متوسطي القنوات وتخصيصها ومعرّف الحدث.

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


JET النافذة الرئيسية لصنّاع المحتوى

تقوم الأزرار التي تظهر على الجانب الأيسر من النافذة الرئيسية بما يلي:

إضافة: يعرض هذا الخيار شريحة أو نافذة الحدث لإضافة شريحة أو حدث جديد.

المراجعة: عرض الشريحة أو نافذة الحدث لتعديل شريحة أو حدث حالي

حذف: لحذف الشريحة أو الحدث المحدّدَين (سيؤدي هذا الإجراء إلى طلب التأكيد)

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

قائمة الانتظار للكل: (يحدد) جميع المقاطع للتشغيل

إنهاء جميع الأجزاء: (إلغاء تحديد) جميع المقاطع

تشغيل: لبدء تشغيل كل المقاطع المدرَجة في قائمة الانتظار. يتغيّر هذا الزر إلى "إيقاف" في حال تشغيل أي مقاطع

تجربة الأداء: لعرض نافذة تجربة الأداء (انظر أدناه)

5.1 نافذة تقسيم

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

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

تتولى مَعلمات الشريحة ما يلي:

  • اسم الشريحة - تعيين اسم الجزء
  • ملف MIDI - اسم وموقع ملف MIDI الذي يتم اشتقاق المقطع منه. سيؤدي الزر الموجود على اليمين مباشرةً إلى ظهور متصفح لتحديد موقع ملف midi على محرك الأقراص الثابتة.
  • ملف DLS: اسم ملف DLS2 وموقعه، إن وجد، الذي يستخدمه ملف MIDI لهذا الجزء.
  • بداية من M/B/T - بدء القياس، والتغلب على الجزء
  • في نهاية المطاف، M/B/T - المقياس الأخير والتفوق في المقطع المحدد
  • كمية - تحديد كم قيمة المقطع الحالي أثناء التشغيل

في ما يلي حقول اختبار الأداء:

  • كتم صوت المقطع الصوتي - يعرض مسارات MIDI (وليس القنوات) في ملف MIDI. سيؤدي النقر فوق مربع اختيار المسار إلى كتم صوت هذا المسار.
  • قناة - تعرض قناة MIDI المخصصة لكل مسار
  • الاسم - لعرض الحدث التعريفي لاسم المسار (إذا كان موجودًا) لكل مسار
  • التكرار - تشير إلى عدد المرات التي يجب أن يتكرر فيها مقطع ما أثناء التشغيل
  • تبديل الموضع - تشير إلى التبديل بألوان شبه نغمات أو نصف خطوات ينبغي تبديل موضعها أثناء التشغيل
  • على يسار نافذة "اختبار الأداء"، ستجد بضعة أزرار إضافية. ويتم ذلك على النحو التالي:
  • حسنًا - يؤدي تحديد "حسنًا" إلى تأكيد جميع إعدادات القسم وإغلاق نافذة الشريحة
  • إلغاء - يؤدي تحديد "إلغاء" إلى إلغاء أي تغييرات وإغلاق نافذة الشريحة
  • التكرار - لعرض نافذة "تكرار المقاطع" لإدخال قطاعات متعددة في الوقت نفسه. يُرجى مراجعة القسم أدناه.
  • تشغيل/إيقاف الشريحة - لبدء تشغيل المقطع أو إيقافه باستخدام سمات المقطع المعينة.
  • تشغيل/إيقاف ملف MIDI - لبدء أو إيقاف تشغيل ملف MIDI الذي تم تعيين المقطع له.
  • إيقاف مؤقت/استئناف - لإيقاف التشغيل مؤقتًا أو استئنافه.

5.2 نافذة الحدث

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

هناك قسمان رئيسيان لنافذة الحدث قسم التقسيم على الجانب الأيمن من نافذة الحدث مخصص للعرض فقط. فهو يعرض تصنيفات المقطع المحدد. على الجانب الأيسر من الصفحة، يمكنك تخصيص قسم "الأحداث" وتتوفّر المَعلمات التالية:

اسم الحدث - يعيّن اسمًا للحدث

نوع الحدث - يحدد نوع الحدث لتعيينه.

بداية من M/B/T - لضبط مقياس البدء والفوز ووضع علامة للحدث

إنهاء M/B/T - لضبط المقياس النهائي للحدث والفوز فيه ووضع علامة عليه، إذا كان ذلك منطبقًا

المسار - يحدد المسار في الشريحة المحددة التي سيتم تطبيق الحدث عليها

القناة - لتحديد قناة MIDI التي سيتم تطبيق الحدث عليها. يجب أن تتطابق قناة MIDI مع قناة MIDI للمسار

رقم تعريف الحدث - يحدد رقم تعريف الحدث. يمكن تعيين أحداث متعددة للشريحة نفسها، وبالتالي يتم استخدام رقم تعريف الحدث لتحديدها

على يسار نافذة "اختبار الأداء"، ستجد بضعة أزرار إضافية. ويتم ذلك على النحو التالي:

حسنًا - يؤدي اختيار "حسنًا" إلى تأكيد جميع إعدادات الحدث وإغلاق نافذة الحدث.

إلغاء - يؤدي تحديد "إلغاء" إلى إلغاء أي تغييرات وإغلاق نافذة الحدث

التكرار - يعرض نافذة تكرار الحدث لإدخال أحداث متعددة في وقت واحد. انظر أدناه.

تشغيل/إيقاف - لبدء تشغيل المقطع أو إيقافه باستخدام سمات المقطع المعينة. أثناء تشغيل المقطع، يمكن تشغيل الأحداث وتجربتها.

عامل التفعيل - يشغِّل الحدث المعيّن. يكرر هذا أمر واجهة برمجة التطبيقات الذي ستستخدمه لعبة JET لبدء الحدث، وبالتالي يمنح مؤلف المحتوى طريقة لاختبار سلوك الحدث.

كتم الصوت/إلغاء كتم الصوت - كتم الصوت/إلغاء كتم الصوت - سيؤدي هذا الإجراء إلى كتم صوت أو إعادة صوت المقطع الصوتي الذي تم تعيين الحدث له

إيقاف مؤقت/استئناف - لإيقاف التشغيل مؤقتًا أو استئنافه.

لاختبار أداء حدث ما، يمكنك تحديد الزر "تشغيل". سيؤدي هذا الإجراء إلى بدء التشغيل. سيرسل زر التشغيل حدث التشغيل عند الضغط عليه. هذا يعادل تحديد حدث المشغِّل الأخضر في المخطط الزمني.

ملاحظة: تهدف أحداث التشغيل إلى إعادة صوت مسار واحد من الشريحة عند بدئها، ثم كتم صوت هذا المسار في نهاية شريحة عامل التفعيل. لذلك يجب التأكد من تعيين علامة كتم الصوت لكتم صوت المسار الذي لن يكون كتم صوت حدث التشغيل عند استلام حدث مشغل.

يُرجى قراءة القسم 6 الخيارات المتقدمة أدناه للاطّلاع على تفاصيل عن آلية عمل الأحداث وسلوكها.

5.3 نسخ النوافذ

غالبًا عند إنشاء ملفات JET، ستحتاج إلى إنشاء عشرات أو حتى مئات الأحداث. قد تحتاج أيضًا إلى نقل الأحداث. تسمح نافذتا Replicate وMove بهذا الأمر. هناك نافذتان تكرار لإنشاء شرائح أو أحداث متعددة. وهي تظهر على النحو التالي:

نافذة تكرار الجزء

تكرار نافذة الحدث

تعمل كلتا نافذتي التكرار بالطريقة نفسها. بعد إنشاء شريحة أو حدث أولي، يمكنك تحديد زر "التكرار". وتكون المعلمات على النحو التالي:

بادئة الاسم - لضبط البادئة لاسم كل مقطع أو حدث يتم إنشاؤه

بداية من M/B/T - يحدد وقت البدء للجزء الأول أو الحدث الأول

إضافة M/B/T - يضبط الوقت بين المقاطع أو الأحداث التي تم إنشاؤها.

الرقم - يضبط عدد الشرائح أو الأحداث التي تريد إنشاءها. إذا تجاوز الرقم طول ملف MIDI (للمقاطع) أو المقطع (للأحداث)، لن يتم إنشاء هذه الكائنات.

معاينة - تتيح لك المعاينة فحص الكائنات التي تم إنشاؤها قبل قول "حسنًا" لإدراجها.

5.4 نقل النوافذ

تعمل الدالة Move بشكل مشابه لدالة Replicate، لأنها تسمح لك بتعديل مقاطع أو أحداث متعددة في وقت واحد، وفي هذه الحالة نقلها بالزمن. مثلما الحال مع التكرار، هناك نافذتان للنقل، إحداهما للشرائح والأخرى للأحداث. تبدو النوافذ كما يلي:

نقل نافذة الحدث

لاستخدام "نقل"، حدد أولاً الشرائح أو الأحداث التي تريد نقلها زمنيًا، ثم انقر على الزر "نقل". المعلمات هي على النحو التالي:

بداية من M/B/T - يحدد وقت البدء للجزء الأول أو الحدث الأول

إضافة M/B/T - يضبط الوقت بالنمط M/B/T الذي تريد نقل العناصر وفقًا له.

معاينة - تتيح لك المعاينة فحص الكائنات التي تم إنشاؤها قبل قول "حسنًا" لنقلها.

5.5 نافذة الاختبار

يؤدي النقر على زر اختبار الأداء في النافذة الرئيسية لتطبيق JET Creator إلى فتح نافذة اختبار الأداء. هذا هو المكان الذي يمكن لمؤلف المحتوى أو مبرمج التطبيقات من خلاله محاكاة التشغيل التفاعلي كما قد يحدث في تطبيق الجوّال أو اللعبة نفسها.

نافذة اختبار JET

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

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

على وجه التحديد، تتصرف الأزرار على النحو التالي:

قائمة الانتظار - لتحميل الجزء المحدد في قائمة الانتظار وبدء التشغيل

الإلغاء والإضافة إلى قائمة المحتوى التالي - لإلغاء المقطع قيد التشغيل حاليًا قبل وضع المقطع المحدد في قائمة الانتظار للتشغيل

إلغاء الحالي - لإلغاء الجزء قيد التشغيل حاليًا في قائمة الانتظار وبدء تشغيل الجزء التالي

إيقاف - يوقف تشغيل كل المقاطع الموضوعة في قائمة الانتظار

كتم صوت الكل - كتم صوت جميع المقاطع الصوتية في المقطع الحالي

كتم الصوت بدون صوت - إلغاء كتم صوت جميع المقاطع الصوتية في الجزء الحالي

كتم الصوت الأصلي - تعيين علامات كتم الصوت الأصلية للمقطع الحالي

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

5.6 قوائم JET لصنّاع المحتوى

توفر قوائم JET Creator الوصول إلى العديد من المعلمات في النافذة الرئيسية بالإضافة إلى بعض المعلمات الإضافية.

5.6.1 قائمة ملف

تحتوي قائمة "File" (ملف) على العناصر التالية:

جديد - ينشئ ملف JET Creator جديد (.jtc).

فتح - يتم فتح ملف JET Creator الحالي

حفظ - يحفظ ملف JET Creator المفتوح حاليًا

حفظ باسم - يحفظ ملف JET Creator المفتوح حاليًا في ملف جديد

استيراد المشروع - لاستيراد أرشيف منشئ JET (بتنسيق .zip)

تصدير المشروع: يتم تصدير أرشيف صنّاع المحتوى بتنسيق JET (zip.)

الخروج - للخروج من التطبيق

5.6.2 تعديل القائمة

تحتوي قائمة "Edit" على العناصر التالية:

تراجع - سيؤدي التراجع إلى التراجع عن آخر تعديل تم إجراؤه

إعادة - سيعيد الإعادة التراجع الأخير

قص - نسخ المعلمة المحددة إلى الحافظة وحذف الجزء المحدد

نسخ - نسخ المعلمة المحددة إلى الحافظة والاحتفاظ بالاختيار

لصق - لصق المعلمة المحددة

5.6.3 معيار JET

تحتوي قائمة "Edit" على العناصر التالية:

المواقع - يؤدي هذا الخيار إلى عرض نافذة أولويات JET Creator. تسمح لك هذه النافذة بتعيين الشروط التالية لملف JET معين:

معلومات حقوق الطبع والنشر - تحتوي على معلومات حقوق الطبع والنشر ليتم إدراجها في ملف JET

Chse Controllers - خيار ملاحقة وحدات التحكم (تشغيل/إيقاف). يجب أن يكون هذا عادةً ما يكون قيد التشغيل.

حذف المسارات الفارغة - لحذف أي مسارات MIDI فارغة

5.6.4 الشرائح

تحتوي "قائمة الشرائح" على العناصر التالية:

إضافة شريحة - يؤدي هذا الإجراء إلى إظهار نافذة "تقسيم"

تعديل الشريحة - تعديل سمات الشريحة

حذف الشريحة - لحذف الشريحة الحالية من قائمة الشرائح

5.6.5 المساعدة

ستحتوي قائمة المساعدة على العناصر التالية على الأقل:

مركز مساعدة JET Creator - سيتم إطلاق مستند مساعدة PDF أو الانتقال إلى قسم المساعدة عبر الإنترنت

لمحة - رقم إصدار صانع المحتوى JET، معلومات SONiVOX

شرح 6 أحداث مشغِّلة

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

تسمح أحداث التشغيل بما يلي:

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

يستخدم نظام JET أحداث MIDI CC العادية لتنفيذ هذه الإجراءات ومزامنة الصوت. تعتبر وحدات التحكم التي تستخدمها JET من بين تلك غير المحددة للاستخدام المحدد من خلال المواصفات. تعريفات وحدة التحكم المحددة هي كما يلي:

وحدات التحكم 80-83 محجوزة للاستخدام من خلال التطبيق

وحدة التحكّم علامة حدث JET 102

وحدة التحكّم علامة المقطع 103 JET

وحدات التحكّم 104-119 محجوزة للاستخدام المستقبلي

6.1 JET Clip Marker (CC103)

وحدة التحكم 103 محجوزة لوضع علامات على المقاطع في مسار MIDI الذي يمكن تشغيله من خلال طلب بيانات من واجهة برمجة التطبيقات JET_TriggerClip. يتم ترميز معرّف المقطع بمقدار 6 بتات منخفضة لقيمة وحدة التحكّم. يتم تعيين البت 6 على واحد للإشارة إلى بداية المقطع، وتعيينه على صفر للإشارة إلى نهاية المقطع.

على سبيل المثال، لتحديد مقطع بمعرّف المقطع 1، يدرج المؤلف حدث وحدة تحكّم MIDI مع وحدة التحكم=103 والقيمة=65 في بداية المقطع، وحدثًا آخر مع وحدة التحكم=103 والقيمة=1 في نهاية المقطع. عند استدعاء دالة JET_TriggerClip() بمعرف مقطع 1، لن يتم كتم صوت المسار عند مصادفة قيمة وحدة التحكم 65 وكتم الصوت مرة أخرى عند مصادفة قيمة وحدة التحكم 1.

الشكل 5: مقطع متزامن

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

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

6.2 علامة حدث JET (CC102)

يتم الاحتفاظ بوحدة التحكم 102 لوضع علامات على الأحداث في ساحات مشاركات MIDI التي تختص بوظيفة JET. القيمة الوحيدة المحددة حاليًا هي 0، التي تحدد نهاية المقطع لأغراض التوقيت.

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

لتجنب هذه المشكلة، يمكن للمؤلف وضع علامة نهاية شريحة JET (controller=102, value=0) عند النقطة المراد تكرارها. عند مصادفة علامة نهاية الشريحة، سيتم تشغيل المقطع التالي، أما إذا تم تكرار المقطع الحالي، فسيتم استئناف التشغيل في بداية المقطع.

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

الشكل 6: علامة نهاية الشريحة

6.3 وحدات التحكّم في التطبيقات (CC80-83)

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

7 إرشادات لصنّاع محتوى JET

7.1 ترتيب المهام

وكما هي الحال في جميع المشاريع، من الأفضل مناقشة تصميم الموسيقى التفاعلية وتصميمها مع مصمّم اللعبة ومبرمجها قبل البدء في مقطوعتك الموسيقية. يمكن أن يساعدك المخطط و/أو المواصفات كثيرًا في تجنُّب الاضطرار إلى إعادة تنفيذ المهام بعد وضع اللعبة.

بشكل عام، عليك أولاً كتابة الموسيقى الخاصة بك باستخدام أداة تعديل البيانات (DAW) التي تختارها بالطريقة التي اعتدت على تأليف المحتوى بها، ثم تقسيم ملف MIDI النهائي حسب الحاجة في التطبيق. بعد ذلك، انتقِل إلى JET Creator وأنشِئ كل المقاطع الموسيقية بالترتيب الأسهل لمعاينتها عند تشغيلها بالترتيب. وأخيرًا، أضف أحداث JET للتحكم في الشرائح عبر لعبة Android وأجري اختبارها حسب الحاجة في JET Creator. وأخيرًا، احفظ المشروع في JET Creator وسلّم ملف .jet إلى المبرمج لدمجه في اللعبة. بعد المعاينة، من المحتمل أن تكون هناك تغييرات في سمتَي ملفات MIDI وJET Creator.

7.2 الحفاظ على الذاكرة

إذا كنت تحاول الحفاظ على الذاكرة، يمكنك إنشاء أقل عدد ممكن من ملفات MIDI، وإنشاء عدة مقاطع من ملف MIDI هذا. على سبيل المثال، يمكن لملف MIDI و12 شريط وثلاثة أقسام مقسّمة إلى 4 أشرطة هي "أ" و"ب" و"ج"، أن ينشئ أغنية أطول. ما عليك سوى إنشاء مقاطع متعددة تشير إلى ملف MIDI واحد، ثم ترتيبها كيفما تشاء. على سبيل المثال، ينتج عن A وA وB وA وC وA وB وA وA أغنية من 36 شريط. استخدم JET لإضافة مجموعات متكررة، وتبديل موضع المقاطع، وكتم الصوت وإعادة صوت المقاطع بشكل تفاعلي لجعلها أكثر تشويقًا.

7.3 التكرار

لزيادة سرعة إضافة الشرائح أو الأحداث، استخدِم الأمر "تكرار". يمكن أن يؤدي التكرار إلى إضافة شرائح أو أحداث متعددة في الوقت نفسه ويستخدم مَعلمة إزاحة واصطلاح تسمية بادئة لتسهيل قراءة العناصر. يُعد الأمر MOVE مفيدًا أيضًا لنقل أحداث متعددة باستخدام عدد محدد من المقاييس أو الإيقاعات أو المؤشرات.

7.4 الخيارات التفاعلية

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

7.4.1 تشغيل شرائح متعددة

بهذه الطريقة، يشغِّل التطبيق شرائح محدَّدة بناءً على الأحداث في اللعبة. على سبيل المثال، قد يؤدي المدخل الذي به الكثير من القتال إلى تشغيل الجزء 1 بينما يؤدي المدخل بدون قتال إلى تشغيل الجزء 2. ويؤدي استخدام مقاطع JET TriggerClips بالتزامن مع هذه الطريقة إلى إنشاء المزيد من التنوع.

7.4.2 مصفوفات كتم الصوت

في هذه الطريقة، يشغّل التطبيق أحداث كتم الصوت وإعادته في مسارات محدّدة في تسلسل MIDI واحد. على سبيل المثال، يمكن أن يلعب الردهة التي بها الكثير من القتال مسارات MIDI من 1 إلى 16، بينما يمكن للمدخل الذي لا يتضمن قتالاً أن يتم تشغيل نفس ملف متوسط الجهاز ولكن يتم كتم صوت المسارات من 9 إلى 16. ويؤدي استخدام مقاطع JET TriggerClips بالتزامن مع هذه الطريقة إلى إنشاء المزيد من التنوع.

7.4.3 أسلوب اللعب المستنِد إلى الموسيقى

إنّ الألعاب التي تعتمد على الموسيقى تشبه ما حققه استوديو Guitar Hero وJETBOY من خلال تحديد المحتوى الموسيقي لكيفية عرض الأحداث التصويرية. ثم يستفسر التطبيق عن استجابة المستخدم للأحداث الرسومية ويعدّل الموسيقى بشكل تفاعلي استجابةً لها. في هذه الطريقة، تستخدم اللعبة أحداث تطبيق JET، وهي وحدات تحكُّم MIDI مضمّنة في ملف MIDI وتقرأها اللعبة في الوقت الفعلي. استنادًا إلى استجابة المستخدم، يمكن ضبط مصفوفات تشغيل و/أو كتم صوت شرائح متعددة.