دعنا نتحدث أيضًا عن النظير - rFXGen ، wafxr.
صور chuttersnap / Unsplash
المزيد عن المشروع
تم تقديم ZzFXM بواسطة Frank Force ، مبرمج ومؤلف مدونة تطوير اللعبة Killed By a Pixel. في مواده ، يولي اهتمامًا خاصًا لقضايا حفظ الذاكرة. كتب ذات مرة محاكي بيانو جافا سكريبت كان فقط كيلو بايت واحد.
يواصل Melody Generator هذه الفكرة - صممه فرانك خصيصًا لإنشاء موسيقى للبرامج الصغيرة جدًا. يتم تنفيذ مثل هذه المشاريع كجزء من مسابقة js13k Games المفتوحة ، التي يكتب المشاركون فيها ألعابًا بتنسيق HTML5 و JavaScript باستخدام عشرات كيلوبايت من الذاكرة.
يمكن استخدام ZzFXM لتطوير ألعاب مستقلة كاملة. تم ترخيصه بموجب ترخيص MIT ، لذا فهو مناسب للمشاريع التجارية.
توجد مصادر وتعليمات الإعداد في المستودع على GitHub .
ماذا يوجد تحت غطاء المحرك
تستخدم الأداة محرك ZzFX لكتابة المؤثرات الصوتية التي تشبه ثمانية بت. يسمح لك بالتحكم في تسعة عشر معلمة صوتية ، من الحجم إلى التردد والشكل الموجي. يمكن العثور على أمثلة للأصوات التي يمكن أن تصدرها ZzFX على موقع Frank Force الإلكتروني . تستخدم ZzFXM بعضها كعينات.
يشبه تنسيق الملفات النهائية MOD المستخدم لتخزين وتشغيل المقطوعات الموسيقية على كمبيوتر Amiga الشخصي ، وبالتالي ، يتم تخزين جميع العينات التي تحتوي على أصوات الآلات في ملفات مختلفة (مبدأ نمطية).
كيف تعمل
يؤلف الملحن سلسلة من الملاحظات تشير إلى الآلة التي يجب أن تعزف عليها ومتى. هذا التسلسل يسمى المسار. تشكل العديد من المسارات التي تبدو متوازية كتلة (نمط) برقمها الخاص. علاوة على ذلك ، يحدد المؤلف في رمز البرنامج النمط الذي يجب أن يصدره ومتى.
يتيح لك هذا الأسلوب تكوين التكوين المطلوب بسرعة ، ولكن من الصعب جدًا قراءة الكود النهائي بدون تعليقات. في المستودع على GitHub ، يعطي مؤلف المولد المثال التالي:
[ // Song
[ // Instruments
[.9, 0, 143, , , .35, 3], // Instrument 0
[1, 0, 216, , , .45, 1, 4, , ,50], // Instrument 1
[.75, 0, 196, , .08, .18, 3] // Instrument 2
],
[ // Patterns
[ // Pattern 0
[ // Channel 0
0, // Using instrument 0
-1, // From the left speaker
1, // play C-1
0, 0, 0, // rest (x3)
3.5, // play E-1 with 50% attenuation
0, 0, 0 // rest (x3)
],
[ // Channel 1
1, // Using instrument 1
1, // From the right speaker
2, // play D-1
2.25, // play D-1 with 25% attenuation
3.5, // Play E-1 with 50% attenuation
4.75, // Play F-1 with 75% attenuation
-1, // Release the note
0, 0, 0 // rest (x3)
]
]
],
[ // Sequence
0, // Play pattern 0
0, // ...and again
],
120, // 120 BPM
{ // Metadata
title: "My Song", // Name of the song
author: "Keith Clark" // Name of the author/composer
}
]
يمكنك الاستماع إلى كيفية إنشاء المسارات باستخدام صوت الأداة على GitHub . حجم الأغنية لا يتجاوز 550 بايت.
ما هي نظائرها
أحد نظائر ZzFXM هو rFXGen . إنه مكتوب بلغة C ويعتمد على مشروع sfxr - الذي قدمه أحد المشاركين في مسابقة LD48 في عام 2007. في إطاره ، يجب على كل مطور تقديم لعبة صغيرة في غضون 48 ساعة. تدعم الأداة المساعدة RFXGen المذبذبات والاهتزازات ومرشحات التمرير المنخفضة والعالية.
تصوير Ohmydearlife / Pixabay
مولد صوت مضغوط آخر - wafxr . يعرض الصوت الحي باستخدام WebAudio API ومكتبة wasgen . يدعم Wafxr أيضًا المذبذبات و tremolo / vibrato وفلاتر متنوعة. يوجد عرض توضيحي للعمل على GitHub - حيث يمكنك تقييم الأداة بنفسك.
ماذا لدينا عن حبري:
« Hi-Fi»:
—
— ,
VR
Sporth — live-
: 5 , «»