Постоянно находясь в поиске инновационных решений, мы то и дело экспериментируем на грани технологий и искусства. На этот раз вызовом стал международный конкурс INTEL APP INNOVATION CONTEST. Мы соединили цифровую живопись и программную среду и получили возможность взаимодействовать с обычной картиной. К любому объекту на картине можно прикасаться, можно передвигать его. При этом мы пошли дальше и сделали так, что все объекты подчиняются законам физики. И если повернуть картину на определенный градус, предметы будут падать на бок, катиться и перемещаться так, как если бы это было в реальной жизни. Этот проект мы называем «Живая картина».
Представляя этот проект на суд международной аудитории, одной из задач было отразить в графическом интерфейсе узнаваемый образ страны. Мы решили уйти от современных стереотипов и остановились на символах советской России, а точнее – предметах интерьера детской комнаты того времени.
Игрушечная лошадка, паровозик, портфель, флажок, неваляшка – все эти предметы имеют разный вес и разную форму, поэтому как нельзя лучше подходят для визуализации законов физики по отношению к нарисованным объектам.
Реализация
Для того, чтобы графический интерфейс комнаты ожил, программисты использовали
гибкую программную среду Unity3D. В качестве языка программирования был выбран
язык C#.
Важным этапом в разработке была задача заставить предметы реагировать при повороте самой картины. Речь о так называемом "двигателе инсталляции", который
разработчики AscreenIM собирали вручную на основе аппаратной платформы Arduino и сенсорного датчика для
определения ориентации в пространстве. Первый микроконтроллер позволяет
получать и обрабатывать данные из физического мира в виртуальной среде, а
сенсорный датчик 9DOF похож на тот, что встроен в мобильные телефоны - когда вы
поворачиваете аппарат, изображение на экране поворачивается вслед за движением.
Соединив эти возможности в одном устройстве, мы получили картину, которая может
«считывать» градус поворота и в зависимости от него менять изображение.
Помимо этого каждый предмет в комнате должен "издавать" соответствующий звук. Некоторые объекты, например, упавшую на пол машину-игрушку, озвучивали с помощью металлического подноса, чтобы добиться максимально реалистичного сходства.
Вернуть все вещи в комнате на свое место можно одним касанием. Для этого предусмотрена кнопка с функцией "обновить".