Whirl & RubyCircuit
Привет, Руби. Я тут думаю над кинетической инсталляцией, которая будет реагировать на движение людей – с датчиками и микроконтроллером, чтобы двигалась спонтанно, почти непредсказуемо. Как думаешь, получится ли у нас сохранить структуру понятной, но сделать паттерн случайным? Может, у тебя есть идеи, как сделать это эффективно, не потеряв атмосферу?
Конечно. Поставь ввод от датчика движения на прерывание, переключи флаг, и пусть таймер запускает твой цикл движения. В этом цикле используй небольшой линейный конгруэнтный генератор, чтобы выбирать следующую фазу паттерна из заранее подготовленной таблицы. Так логика останется в нескольких десятках строк, генератор случайных чисел – всего пара строк умножения и сложения, а выглядит всё спонтанно. Только помни: если начнёшь вводить кучу светодиодов в лабиринт каскадных задержек, будешь отлаживать это днями. Держи всё просто и лаконично.