Эксперименты с Unity #7 Pivot Baking
В этот раз хотелось бы рассмотреть интересную технику под названием Pivot Baking.
Вершинные шейдеры позволяют применять различные трансформации к вершинам геометрии. При этом все вершины обрабатываются независимо друг от друга. Поэтому при применении различных трансформаций к вершинам меша может потеряться исходная форма.
Одним из способов избежать искажений является запекание пивота или нулевой точки объекта в меш. Информация о расположении нулевой точки каждого логического объекта запекается в один из текстурных каналов. Это позволяет в шейдере работать с вершинами одного объекта как с группой вершин и применять к ним различные трансформации, например вращение. При этом сохраняется исходная форма объектов. Это позволяет создать иллюзию, что в кадре не один, а несколько мешей, отрисованных независимо.
И как же это можно применить? Например с помощью этого способа можно реализовать простую анимацию строительства объекта. Объекты будут по одному появляться на сцене, создавая иллюзию строительства. И для этого нужен всего лишь простейший шейдер и меш с запеченными пивотами.
В последнем примере добавим некоторую интерактивность. Попробуем реализовать анимацию подъема плиток рядом с курсором мыши.
откуда такое чудное название? О_о