Страница 1 из 1

Интерактивная трава

СообщениеДобавлено: 16 дек 2016, 19:41
Woolf
Кто либо делал такую штуку, чтобы трава под игроком "проминалась" или хотя бы шевелилась от его перемещения? Причем, именно трава TerrainEngine?
А может что-то готовое есть ?

Я вот нашел https://www.assetstore.unity3d.com/en/#!/content/36335 но оно не для TE

Re: Интерактивная трава

СообщениеДобавлено: 22 дек 2016, 08:11
jetyb
Делается путем замещения стандартного шейдера травы. Проминание задается модификацией вершинного шейдера.

Чтобы шевелить траву вокруг игрока, достаточно шевелить ее только в некоторой простой области вокруг игрока(круг или прямоугольник), определяющейся скриптом и передающейся в шейдер (через Shader.SetGlobalVector(Vector4 rectArea) ).

Для проминания травы делается обновляемая текстура-маска проминания. Проминание определяется например по этой текстуре и worldPosition вершины. Текстуру проминания можно обновлять через Graphics.Blit или вычислительный шейдер.