عن المشروع

Undertone هو محرك توليف إجرائي يعتمد على TypeScript مصمم لتأثيرات صوت الألعاب وإنتاج الموسيقى. يعمل على المبدأ أن كل شيء هو نمط، مما يسمح للمستخدمين بإنشاء كل شيء من بلبلات واجهة مستخدم بسيطة إلى أغاني متعددة الأقسام باستخدام بناء صياغة موحد مستوحى من Strudel و TidalCycles. القدرات الرئيسية تشمل: - **التدوين المصغر**: بناء صياغة قوي يعتمد على السلاسل لتحديد التسلسلات، التقسيمات، الألحان، الإيقاعات الإقليدية، والتبديلات. - **التوليف والتشغيل**: يدعم أشكال موجية مختلفة (جايب، مثلث، مربع، منشار) وأنواع ضوضاء (بيضاء، وردية، بنية)، بالإضافة إلى نظام تشغيل عينات "أحضر أصولك الخاصة". - **أدوات نظرية الموسيقى**: دعم مدمج للألحان basada على درجات السلم وتوسيع رموز الألحان (التوزيع) بناءً على تنفيذات رياضية بدلاً من بيانات مجمعة. - **التحكم بالصوت**: ضوابط قابلة للسلسلة وغير قابلة للتغيير لمغلفات ADSR، ومرشحات منخفضة/عالية التمرير، ومحولات الطور، وانزلاق النغمة. يمكن لمعظم المعلمات الرقمية أن تُنمذج باستخدام التدوين المصغر. - **الصوت المكاني**: يدعم تموضع ستيريو وتوزيع متعدد القنوات يصل إلى 7.1 صوت محيطي. - **مجموعات الأنماط**: أدوات لمعالجة الأنماط مثل `fast`، `slow`، `rev` (العكس)، `jux` (ال juxtaposition)، و`arrange` لتنسيق الأغاني. - **أنماط الأداء**: يوفر كلاً من `.play()` للتأثيرات الإيقاعية أحادية الإطلاق و`.loop()` للتسلسلات الموسيقية المجدولة مع التحكم بـ BPM.