![]() |
Пианино на AS3. Синтезатор звука
Хочу сделать пианино на Flash с красивым звуком. Пока звук подгружается из отдельных файлов, но это не очень удобно: 1) файлы занимают достаточно много места; 2) длительность ноты постоянно одна, независимо от силы удара по клавише и времени удержания.
Можно как-нибудь программно синтезировать красивый звук? |
Можно, только Flash для этого очень плохо подходит. Придётся думать не о "красиво", а "лишь бы не заикалось", и задержка довольно заметна.
И как вы собрались замерять силу удара по клавише? |
Цитата:
|
Если нажать на кончике клавиши сила будет куда больше, чем у основания
|
Вы мышкой на экране клавиши собираетесь нажимать, что-ли? Тогда кому и зачем нужно такое пианино?
|
Проявите фантазию, друзья. Вы же печатает большие и маленькие буквы одними и теми же клавишами? Добавьте клавиши-модификаторы и вот вам сила удара и педаль затухания - Shift, Ctrl, Alt и пробел)))
|
Шифты годятся только для одиночных нажатий нот, с ними ничего не сыграть. Более того, в музыкальном ПО они часто сдвигают текущую октаву (используется для ввода, не для игры). Сила удара для ввода не нужна, значит речь идёт об игре. Клавиатура PC не позволяет измерить силу нажатия по своему устройству, тем более во Flash и под Windows (нужно очень точно измерять время), а MIDI Flash не поддерживает.
|
Не думаю что речь идет о серьезной игре на пианино с помощью клавиатуры. Это невозможно по многим причинам - буфер клавиатуры не даст вам взять аккорд. Количество одновременно нажатых клавиш ограничено буфером. Например на моей клаве можно нажать одновременно DFH, a DFG - нельзя. Можно конечно повесить аккорды на какой-то ряд клавиш, вопрос только - уже прозвучавшее "кому надо такое пианино".
|
О серьёзной игре речь безусловно идти не может, однако не надо недооценивать возможности PC-клавиатуры. На ней можно играть и простые вещи, и посложнее или побыстрее. Больше двух нот одновременно брать лучше не пытаться, большинство клавиатур позволяют брать три, но блокируют некоторые комбинации.
Количество одновременно нажатых клавиш ограничено не только буфером, но и банально матрицей клавиш. |
Силу нажатия можно попробовать эмулировать продолжительностью нажатия.
|
| Часовой пояс GMT +4, время: 09:01. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.