Как создать механику лепки на гончарном круге — описание процесса реализации

Руки проецируются на текстуру цилиндра, а карта смещения применяется для генерации нормалей поверхности.

Глава AR/VR-отдела в Shopify Дэниель Бошам опубликовал в Твиттере тред, в котором рассказал о реализации механики лепки на гончарном круге в VR.

В основе эффекта лежит шейдер, который может ортогонально проецировать объект на цилиндрическую поверхность. Реализация проста: нужно взять xyz-координаты объекта, сопоставить их с координатами цилиндра и отрендерить их на текстуру.

Первый этап реализации эффекта

Затем тон проекции рассчитывается на основе того, как далеко от поверхности цилиндра располагаются вертексы. Если не «очищать» текстуру, то на цилиндре будут оставаться следы.

На втором этапе нужно сделать так, чтобы на цилиндре оставались следы от рук

Текстуру можно использовать как карту смещения на цилиндре. Это позволяет реализовать эффект деформации объекта. Затем нужно использовать карту смещения для генерации нормалей поверхности в шейдере. Бошам отметил, что для этого можно применить тесселяцию, но это усложнит весь процесс.

Третий этап посвящён созданию эффекта деформации

А теперь самое интересное. Если просто крутить текстуру по горизонтали, то получится иллюзия вращения цилиндра. Это выглядит как деформация движущегося объекта.

На четвёртом этапе нужно реализовать эффект прокручивания цилиндра

Если текстура будет двигаться достаточно быстро, то получится убедительный эффект лепки на гончарном круге. Чтобы материал был похож на мокрую глину, нужно установить roughness близко к 0. Пока этот эффект не позволяет менять высоту цилиндра, но Бошам планирует добавить эту возможность в будущем.

Финальная версия эффекта
Цилиндр можно деформировать не только руками — вы можете использовать любые другие объекты 
Эта механика идеально подходит, чтобы повторить сцену из «Привидения»
298298
32 комментария

Раз уж мы заговорили о той сцене...

109
Ответить

Как перестать орать?)

2
Ответить

Если мне Патрик Свейзи не будет шептать на ушко, то даже покупать нет смысла.

7
Ответить

Шёпот Патрика встроен в массажёр для простаты. Его можно приобрести отдельно к ВР шлему.

Ответить

На своем IPod лет десять назад играл в игрушку, где надо было лепить вазы и окрашивать. Технология была попроще, но всеж

5
Ответить