Войти
UnityФорумОбщее

шейдер воды с пеной

#0
0:43, 4 окт 2022

Добрый день. Пишу сюда с таким вопросом: начал изучать Shader graph  и хочу сделать шейдер воды с пеной, которая будет находиться возле объектов в воде (т.е. если в воде плывет корабль, то вокруг него должна быть пена, а также возле статических объектов). Я новичок в этом деле, поэтому заранее извиняюсь если вопрос слишком глупый и очевидный, просто я хочу понять сам принцип, от чего отталкиваться при создании пены. Я не прошу все разжевать и показать шаг за шагом как это сделать, просто прошу пинок в нужном направлении. Сам я думаю что это должно зависеть от глубины погружения объекта, но не понимаю до конца) В интернете мало материала да и описано явно не для новичка в этом деле. Благодарю за любую помощь!

#1
4:32, 4 окт 2022

если ты на юнити или анриле, то просто купи себе какой-нибудь ассет и не мучайся. если ты пишешь на vulkan/opengl/d3d, то лучше сразу отдохни от этой идеи, пока не наберёшь хотя бы несколько лет опыта программирования более простых систем.

#2
9:11, 4 окт 2022

DenisU
> просто я хочу понять сам принцип, от чего отталкиваться при создании пены.
если у тебя есть mesh distance field то конкретно пена от объектов и берега почти тривиальна.
А если нет, то начни с него.

+ Показать
#3
9:18, 4 окт 2022

Super_inoy
> если у тебя есть mesh distance field то конкретно пена от объектов и берега почти тривиальна.
в шейдере околореалистичной пены вообще ничего нет тривиального. поверхность воды рендерить в 100 раз проще, потому что её поведение подчиняется физике, которую нужно всего лишь не запороть и результат будет сносным. поведение пены же подчиняется настолько сложной физике, что единственный способ её аппроксимировать — это фейками, в которых получается по 4 миллиона параметров и чтобы найти диапазон значений, который не выглядит ужасно, нужно обладать существенным опытом. случай с sdm статической пеной — это самый простой вариант, но даже даже его отрендерить красиво — задача существенно сложнее большинства типичных алгоритмов в графике.

#4
9:32, 4 окт 2022

Suslik
> поведение пены же подчиняется настолько сложной физике, что единственный способ
> её аппроксимировать — это фейками, в которых получается по 4 миллиона
> параметров и чтобы найти диапазон значений, который не выглядит ужасно, нужно
> обладать существенным опытом. случай с sdm статической пеной — это самый
> простой вариант, но даже даже его отрендерить красиво — задача существенно
> сложнее большинства типичных алгоритмов в графике.
Так-то оно так, но суде по описанной им задаче - ему нужно вокруг объектов и береговой линии нарисовать анимированные белые фэйки с небольшим шумом,
а не что-то похожее на физически корректную пену, с генерируемыми источниками частиц при ударах и пеной на гребнях волн.

#5
(Правка: 9:36) 9:35, 4 окт 2022

Super_inoy
> ему нужно вокруг объектов и береговой линии нарисовать анимированные белые фэйки с небольшим шумом
даже это нарисовать так, чтобы оно было похоже на пену (а не на паутину и не на побелку) — гораздо труднее большинства типичных задач в графике. особенно — вокруг движущихся объектов вроде кораблей и лодок.

#6
9:38, 4 окт 2022

Super_inoy
Да, вы правы, я не уточнил этот момент. Мне нужна мультяшная вода с самой простой белой пеной. И использую я кстати unity

#7
(Правка: 9:43) 9:42, 4 окт 2022

DenisU
> И использую я кстати unity
Ну так главное достоинство юнити же это... то что ты вводишь рандомные слова в гугл и тебе сразу ответ
https://www.youtube.com/watch?v=MHdDUqJHJxM Зачем его еще выбирать?
точнее так https://www.youtube.com/watch?v=jRuCQnp78gk

#8
10:26, 4 окт 2022

Super_inoy
в этих двух видео используется node которого нет в Shader graph в юнити 2021+ версиях. Я видел подобные видео. Собственно поэтому я и написал сюда, хотел понять саму суть создания пены, т.е. от чего отталкиваться

#9
13:18, 4 окт 2022

DenisU
> в этих двух видео используется node которого нет в Shader graph в юнити 2021+
чё?

#10
14:32, 4 окт 2022

DenisU
> в этих двух видео используется node которого нет в Shader graph в юнити 2021+
> версиях.
Если это действительно так где нибудь на форуме должна быть тема, а то и не одна с обсуждениям что же делать в юнити 2021+,
потому что задача часто встречается, а комьюнити юнити огромное, самое большое в мире из движкоюзерных комьюнити.

#11
(Правка: 14:52) 14:46, 4 окт 2022

походу действительно ноды нет, но это гуглится

UnityФорумОбщее