
Демо в браузере (WebGL), оно же есть на главной странице сайта
Из меша получается призрак, голограмма или облако летящих искр. Бейкер переводит геометрию в облако точек.
Облако хранится в двух компактных текстурах, и с этого момента исходная модель в эффекте не участвует.
Исходный меш можно вообще не включать в билд.
Облако на него не ссылается.
Так делаются духи и призраки, голографический UI и сканеры в стиле sci-fi.
А ещё переходы с растворением и повторным появлением, заставки с логотипом, визуализация данных и сцены для лендингов.
Всё это получается из моделей, которые уже есть в проекте.
Подходит любой меш, который можно импортировать, от одного объекта до целой иерархии окружения.
Во время работы весь эффект — это один меш, один материал и один draw call.
Во всей цепочке нет ни compute-шейдеров, ни GraphicsBuffer.
Поэтому эффект работает во вкладке браузера и на телефоне.
Там системы частиц на compute-шейдерах просто не запускаются.
★ РАБОТАЕТ НА МОБИЛЬНЫХ И В ВЕБЕ ★
Симуляция — это blit фрагментного шейдера между двумя render texture, которые меняются ролями (ping-pong).
Shader target — 3.5.
Благодаря этому ассет совместим с WebGL2, WebGPU, Android и iOS, где системы частиц на compute-шейдерах не работают.
Размер точки ограничен в пикселях.
Поэтому облако из 160 000 точек остаётся читаемым и дешёвым при любом разрешении и на любом экране.

★ ОДИН КОМПОНЕНТ, ПЯТЬ СИСТЕМ ★
Компонент Liquid Mesh Particles добавляется на пустой объект, в него назначается запечённое облако.
Дальше в одном инспекторе настраиваются отталкивание от курсора, ветер, поток, HDR-градиенты и подкраска по палитре материалов.
Все системы независимы друг от друга.
Каждая выключается одним значением, выставленным в ноль.
Варианты шейдеров и комбинации ключевых слов для этого не нужны.
★ БЕЙКЕР С РАВНОМЕРНЫМ РАСПРЕДЕЛЕНИЕМ, А НЕ СЛУЧАЙНЫЙ РАЗБРОС ★
Point Cloud Baker объединяет все MeshFilter внутри исходного объекта и сваривает совпадающие вершины.
Точки распределяются пропорционально площади треугольников.
Затем проходит отбраковка по Пуассону.
В итоге между точками выдерживается равномерное минимальное расстояние, без комков, которые получаются при наивной выборке.
Жёсткие рёбра можно обойти отдельно, тогда силуэты и изломы остаются чёткими даже при небольшом числе точек.
Цвета материалов собираются в палитру до 32 цветов.
Поэтому модель с несколькими материалами сохраняет свои цвета и в облаке.
★ ПОЛНЫЕ ИСХОДНИКИ, НИЧЕГО СКРЫТОГО ★
Три файла C#, три файла шейдеров и один общий HLSL-инклуд.
Никаких DLL, сторонних зависимостей и скрытого рантайма. Код можно читать, править и выпускать в своём проекте.
Подходит для голографического UI, призраков и духов, эффектов растворения и повторного появления.
Годится для сканеров в стиле sci-fi и визуализации данных.
Можно использовать в заставках с логотипом, на лендингах и в сценах для портфолио.

Возможности
- Любой меш в облако точек. Целую иерархию MeshFilter можно запечь в одно облако за несколько секунд.
- До 500 000 запечённых точек и до 1 000 000 отрисовываемых частиц.
- Плейлист морфинга. Запечённые облака выстраиваются в список, и каждая форма перетекает в следующую. Время показа и время перехода задаются для каждой записи отдельно. В покое затраты как на одно облако, за два облака платится только во время перехода.
- Все настройки хранятся вместе с облаком. Каждая запись — префаб со своими цветами, ветром, потоком, градиентом, масштабом и ориентацией, и всё это плавно интерполируется при переходе.
- Вращение как на поворотном столе. Одно поле скорости вращает весь плейлист вокруг оси Y — для шоурилов и демонстрации продуктов.
- Один draw call. Один меш, один материал, никакой работы CPU на каждую частицу, без GraphicsBuffer и без накладных расходов на инстансинг.
- Без compute-шейдеров. Симуляция на GPU — это blit во фрагментном шейдере, поэтому всё работает на WebGL2, WebGPU, Android и iOS.
- Реакция на курсор и тач. Точки отталкиваются в экранном пространстве с экспоненциальным сглаживанием и плавно возвращаются на место. Поддерживаются мышь и тач, новый Input System и старая система ввода.
- Ветер. Направление, выбор точек по ориентации, смещение по нормали, разброс для каждой точки, дальность сноса, скорость, плавное появление и затухание.
- Поток. Частицы физически движутся вдоль оси в пространстве объекта, держатся поверхности и растворяются на границе геометрии.
- HDR-градиент. Два HDR-цвета проецируются на любую ось, середина градиента настраивается, а отдельный слайдер смешивает его с запечённой палитрой материалов.
- Палитра на 32 цвета материалов. Цвета читаются из _BaseColor или _Color при запекании и сохраняются для каждой точки.
- Распределение по диску Пуассона. Равномерный шаг вместо шума с комками, детерминированный сид для повторяемого запекания.
- Отдельная выборка по жёстким рёбрам. Свой бюджет точек на изломы и силуэты, порог задаётся двугранным углом.
- Размер точки ограничен в пикселях. Минимальный и максимальный экранный размер держат облако читаемым на любом расстоянии и при любом разрешении.
- Превью прямо в Scene view. Ветер, поток, градиенты и плотность обновляются без входа в Play Mode.
- Полные исходники C# и HLSL в комплекте. Без DLL и внешних зависимостей.
- Документация прямо в редакторе. Окно приветствия показывает весь README внутри Unity.

Видео
![]()
https://www.youtube.com/watch?v=2_vd50FK8f8
Страница в Asset Store: Particles Ghost Mesh