Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
#Круги добра
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Динамичный карточный батлер с PVE и PVP-боями онлайн! Собери коллекцию карточных героев, построй свою боевую колоду и вступай в бой с другими игроками.

Cards out!

Карточные, Ролевые, Стратегии

Играть

Топ прошлой недели

  • SpongeGod SpongeGod 1 пост
  • Uncleyogurt007 Uncleyogurt007 9 постов
  • ZaTaS ZaTaS 3 поста
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
122
coremission
coremission
6 лет назад
Лига Разработчиков Видеоигр

Магия шейдеров 7: Делаем материал портала⁠⁠

Привет, ребята!

Совсем я забросил свою подборку про шейдеры, но вот вернулся!


Полярные координаты не очень сложная концепция, которая позволяет делать очень и очень симпатичные эффекты, например вот такой портал!

Магия шейдеров 7: Делаем материал портала Shadermagic, Coremission, Магияшейдеров, Шейдеры, Гифка

Предыдущие записи про шейдеры, смотрите в моих постах или по тегам

Shadermagic Coremission Магияшейдеров Шейдеры Гифка
5
61
Kulac
Kulac
6 лет назад
CGI Media

Процедурный шейдер лавы в Blender 2.8 - видеоурок⁠⁠

Привет!


Еще один небольшой урок для тех, кто увлекается блендером и хочет научиться максимально круто использовать ноды для создания текстур. Делаем лаву, господа!

[моё] Blender 3D Компьютерная графика Совет Видеоуроки Иви Видео Лава Шейдеры
2
7
IsakovDanila
IsakovDanila
6 лет назад

Дебандинг - устранение ступенчатости видео⁠⁠1

Долго и упорно, искал устранялку ступенчатости видео, особенно градиентов, и наконец нашёл, может кому пригодится, а то пока она пока полторам землекопам известна)

Дебандинг - устранение ступенчатости видео Шейдеры, Видеокарта, Видео, Фильмы, Проигрыватель

Проблема в чём - когда видео кодируется (с потерями), нормальна ситуация, когда похожие цвета группируются и на границах переходов возникают чёткие края. Чем ниже битрейт видео, тем больше проявляется бандинг, вот только на h264 даже на битрейте ~блюрея он тоже наблюдается, не говоря уже о ютубах (кстати, ютубовский VP9 намного меньше бандит, чем h264 при меньшем битрейте).


Чтоб это пофиксить, можно юзать MadVR, но он очень требовательный к GPU,  а можно применять шейдеры hlsl (многие плееры поддерживают его - potplayer, kmplayer, mpc), взять можно здесь https://vk.com/doc275347426_493873949


Также шейдер можно использовать для устранения блокинга

Дебандинг - устранение ступенчатости видео Шейдеры, Видеокарта, Видео, Фильмы, Проигрыватель
Показать полностью 1
[моё] Шейдеры Видеокарта Видео Фильмы Проигрыватель
19
23
bnh4120026
bnh4120026
7 лет назад
Fallout

ENB Пресеты для Fallout NV которые стоит попробовать⁠⁠

(Решил сделать это поскольку сам долго времени потратил на нахождение нужного пресета, и хочу облегчить жизнь другим, потому-что оригинальное освещение игры много кому не нравится.

Постарался найти под самые разные вкусы, а ещё этот пост длиннее прошлого, поэтому тут более короткие описания)


Такая-же тема про Fallout 4


Для начала:


ENB - особенная модификация для игр, позволяющая точно настроить сглаживание, свечение, замутнение окружения и другие настройки, а ещё это может очень сильно напрягать ваш ПК.


Что-бы они работали следует установить саму основу здесь.

Так-же для некоторых нужен вот этот плагин.


NEVADA ENB


Делает игру очень светлой, попытка сыграть на атмосфере вроде "Пустыня под аддским палящим солнцем"


https://www.nexusmods.com/newvegas/mods/63036?tab=files

(Есть так-же версия с более тёмными ночами, выбирайте нужную)

ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост
ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост
ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост

Rudy ENB


На этот раз попытка сделать всё немного более аутентично.


https://www.nexusmods.com/newvegas/mods/55076

ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост
ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост
ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост

Old World ENB


"Пресет старого мира" черпает своё вдохновение от ранних фотоаппаратов 1950-х годов.


https://www.nexusmods.com/newvegas/mods/54755

ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост
ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост
ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост

The ENB of the Apocalypse


Немного странное название, ведь никакой *мрачностью* там и не пахнет, да и светит как-то слишком сильно, однако я видел что некоторые играют с этим пресетом, так-что проверьте, может вам понравится.


https://www.nexusmods.com/newvegas/mods/50782

ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост
ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост
ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост

Dreary ENB


Пресет сделанный под вдохновением сталкера и метро, не лорно конечно, но зато красиво.


https://www.nexusmods.com/newvegas/mods/60765

ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост
ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост
ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост

DYNAMO ENB


Возможно это вполне лор-френдли пресет, без всего лишнего.


https://www.nexusmods.com/newvegas/mods/53521?tab=descriptio...

ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост
ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост
ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост

Beautification Project ENB


Если вам больше подходит освещение из четвёртой части, то этот пресет для вас.


https://www.nexusmods.com/newvegas/mods/65315?tab=descriptio...

ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост
ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост
ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост

Enhanced Shaders Classic


Ещё один лор-френдли пресет.


https://www.nexusmods.com/newvegas/mods/34868

ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост
ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост
ENB Пресеты для Fallout NV которые стоит попробовать Enb, Fallout, Fallout: New Vegas, Шейдеры, Не нравится, Моды, Игры, Компьютерные игры, Длиннопост

Ну вроде и всё!

Показать полностью 24
Enb Fallout Fallout: New Vegas Шейдеры Не нравится Моды Игры Компьютерные игры Длиннопост
8
34
bnh4120026
bnh4120026
7 лет назад
Fallout

ENB Пресеты для Fallout 4 которые стоит попробовать⁠⁠

(Решил сделать это поскольку сам долго времени потратил на нахождение нужного пресета, и хочу облегчить жизнь другим, потому-что оригинальное освещение игры мягко говоря *не очень*.)

Для начала:


ENB - особенная модификация для игр, позволяющая точно настроить сглаживание, свечение, замутнение окружения и другие настройки, а ещё это может очень сильно напрягать ваш ПК.


Что-бы они работали следует установить саму основу ниже.

http://enbdev.com/download_mod_fallout4.htm

Empyreal ENB


Делает игру немного более светлой и бледной, немного изменяя эффект от ярких свечений, давая возможность взглянуть на игру немного по другому.


https://www.nexusmods.com/fallout4/mods/176

ENB Пресеты для Fallout 4 которые стоит попробовать Fallout, Fallout 4, Enb, Игры, Компьютерные игры, Шейдеры, Освещение, Моды, Гифка, Длиннопост
ENB Пресеты для Fallout 4 которые стоит попробовать Fallout, Fallout 4, Enb, Игры, Компьютерные игры, Шейдеры, Освещение, Моды, Гифка, Длиннопост
ENB Пресеты для Fallout 4 которые стоит попробовать Fallout, Fallout 4, Enb, Игры, Компьютерные игры, Шейдеры, Освещение, Моды, Гифка, Длиннопост

PRC - PhotoRealistic Commonwealth


Смысл можно увидеть в названии - это попытка сделать освещение более фотографичным, была поставлена задача на реалистичности, если по реализму надо ярче - делается ярче, если темнее - соответственно темнее.

Так-же есть бонусные ENB которые сделаны скорее ради скриншотов и особенности атмосферы, например возможность сделать картинку похожей на видео из VHS кассеты, ну или просто сделать всё чёрно-белым.


https://www.nexusmods.com/fallout4/mods/6796?tab=description

ENB Пресеты для Fallout 4 которые стоит попробовать Fallout, Fallout 4, Enb, Игры, Компьютерные игры, Шейдеры, Освещение, Моды, Гифка, Длиннопост
ENB Пресеты для Fallout 4 которые стоит попробовать Fallout, Fallout 4, Enb, Игры, Компьютерные игры, Шейдеры, Освещение, Моды, Гифка, Длиннопост
ENB Пресеты для Fallout 4 которые стоит попробовать Fallout, Fallout 4, Enb, Игры, Компьютерные игры, Шейдеры, Освещение, Моды, Гифка, Длиннопост

VOGUE ENB


Но если эти навороченные шейдры не для вас, то есть не напрягающий и простой пресет который был создан что-бы было как в оригинале, но лучше.


https://www.nexusmods.com/fallout4/mods/42?tab=description

ENB Пресеты для Fallout 4 которые стоит попробовать Fallout, Fallout 4, Enb, Игры, Компьютерные игры, Шейдеры, Освещение, Моды, Гифка, Длиннопост
ENB Пресеты для Fallout 4 которые стоит попробовать Fallout, Fallout 4, Enb, Игры, Компьютерные игры, Шейдеры, Освещение, Моды, Гифка, Длиннопост
ENB Пресеты для Fallout 4 которые стоит попробовать Fallout, Fallout 4, Enb, Игры, Компьютерные игры, Шейдеры, Освещение, Моды, Гифка, Длиннопост
Показать полностью 9
Fallout Fallout 4 Enb Игры Компьютерные игры Шейдеры Освещение Моды Гифка Длиннопост
5
279
feelnside
feelnside
7 лет назад
Лига Разработчиков Видеоигр

Красивый туман в Unity3d с высокой оптимизацией⁠⁠

В этом посте хотелось бы поделиться очень интересным способом реализации тумана на движке Unity, который прекрасно будет работать на мобильных устройствах. Ниже можно ознакомиться с конечным вариантом:

Красивый туман в Unity3d с высокой оптимизацией Unity3D, Gamedev, Туман, Мобильные игры, Разработка игр, Шейдеры, Indiedev, Fog, Длиннопост

Многие из вас сталкивались с подобными ситуациями, когда используется туман, чтобы сгладить объекты на дальней дистанции. Зачастую берется обычный туман в виде статического цвета близкий к цвету неба. Таким образом удаленные объекты плавно растворяются, тем самым скрывая резкий край уровня.


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

Красивый туман в Unity3d с высокой оптимизацией Unity3D, Gamedev, Туман, Мобильные игры, Разработка игр, Шейдеры, Indiedev, Fog, Длиннопост

Как мы видим, цвет тумана был взят с правой стороны, около солнца. Картинка справа имеет сглаженные края, однако слева можно заметить резкую линию, ибо скайбокс в том месте имеет совсем другой цвет.


Если попытаться поменять цвет тумана ближе к левой стороне, то получим тот же проблемный эффект, но уже с другой стороны:

Красивый туман в Unity3d с высокой оптимизацией Unity3D, Gamedev, Туман, Мобильные игры, Разработка игр, Шейдеры, Indiedev, Fog, Длиннопост

Как же правильно поступить в данной ситуации? Есть несколько вариантов, например вместо одного цвета тумана, можно использовать градиент. Решение интересное, но не практичное в применении, небо иногда может иметь засветы (например воронка от солнца), как результат, одним градиентом здесь не обойтись.


Есть множество вариантов опробовать глобальный туман, использующий post processing, но к сожалению, данный вариант дает очень сильную нагрузку на GPU, использовать его в мобильном проекте, где GPU в основном и является проблемным местом, не рационально. На выходе получится огромное падение fps и ускоренный нагрев устройства.


К счастью, удалось найти очень интересный пост на реддите, в котором человек делится своими мыслями относительно решения этой проблемы. Он предлает накладывать вместо монотонного цвета кубомапу, которая была бы копией скайбокса, но с сильно уменьшенным разрешением + небольшим замытием. Решение великолепное, но есть небольшая загвоздка, для этого нужно переписать все шейдеры в игре, которые должны иметь этот туман. К счастью, сделать это довольно просто.


Править будем vertex-fragment шейдер. Если вы используете Surface шейдеры, то придется сгенерировать vertex-fragment шейдер и вносить изменения уже в нем (можно конечно сделать правки в исходном Surface шейдере, но я не пробовал, т.к. сам использую vertex-fragment).


Ниже предоставлена полная версия шейдера с внесенными изменениями для работы тумана. Все что нужно добавить выделено жирным шрифтом. Осталось только аккуратно перенести это в свои шейдеры:

Shader "Mobile/CustomFogCube"
{
Properties
{
_FogStart("Fog Start", float) = 0 //объявляем наши новые переменные для тумана
_FogEnd ("Fog End", float) = 50

}
SubShader
{
Tags{ "RenderType" = "Opaque" }
Fog{ Mode off }
Pass
{
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#pragma multi_compile _ LIGHTMAP_ON
#include "UnityCG.cginc"
half _FogStart;  //определяем новые переменные в рамках CGPROGRAM
half _FogEnd;

struct appdata
{
float4 vertex : POSITION;
float4 color : COLOR;
float4 uv : TEXCOORD1;
};
struct v2f
{
float4 pos : SV_POSITION;
float4 uv : TEXCOORD1;
half fog : TEXCOORD2;  //добавляем новую переменную для расчета расстояния отображения тумана и последующей передачи в fragment функцию
float4 color : COLOR;
half3 viewDir : TEXCOORD3;
};
v2f vert(appdata v)
{
v2f o;
o.color = v.color;
o.pos = UnityObjectToClipPos(v.vertex);
//lightmaps
o.uv.xy = v.uv.xy * unity_LightmapST.xy + unity_LightmapST.zw;
//fog высчитываем положение тумана в зависимости от заданных значений
half fogz = UnityObjectToViewPos(v.vertex).z;
o.fog = saturate((fogz + _FogStart) / (_FogStart - _FogEnd));

float3 worldPos = mul(unity_ObjectToWorld, v.vertex).xyz;
o.viewDir = -(normalize(UnityWorldSpaceViewDir(worldPos)));
return o;
}
half4 frag(v2f i) : COLOR
{
UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(i);
fixed4 c = i.color * 0.5;
//lightmaps
#ifdef LIGHTMAP_ON
  fixed4 lm = UNITY_SAMPLE_TEX2D(unity_Lightmap, i.uv.xy);
c.rgb *= lm.rgb * 4;
#endif
//fog заменяем плавно цвет поверхности на цвет кубомапы (он же наш туман). Кубомапу нужно задать в настройках освещение (Lighting > Scene > Environment Reflection > Source = Custom > Cubemap = Ваша кубомапа)
half4 fogCube = UNITY_SAMPLE_TEXCUBE(unity_SpecCube0, i.viewDir);
return lerp(c, fogCube, i.fog);

}
ENDCG
}
}
Fallback "Mobile/VertexLit"
}

Для работы шейдера нужно выставить кастомную кубомапу в настройках освещения. Просто проследуйте по следующему пути: Lighting > Scene > Environment Reflection > Source = Custom > Cubemap = Ваша кубомапа, которая дублирует ваш скайбокс, предварительно размазанная в каком-нибудь графическом редакторе, либо просто уменьшенная до размера 32х32 пикселей)


Собственно ещё раз покажу как данный туман выглядит в сцене:

Красивый туман в Unity3d с высокой оптимизацией Unity3D, Gamedev, Туман, Мобильные игры, Разработка игр, Шейдеры, Indiedev, Fog, Длиннопост

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


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

Показать полностью 3
[моё] Unity3D Gamedev Туман Мобильные игры Разработка игр Шейдеры Indiedev Fog Длиннопост
48
187
coremission
coremission
7 лет назад
Лига Разработчиков Видеоигр

Магия шейдеров 6: Glitch-эффект с аберрацией⁠⁠

Вот такой симпатичный эффект рассмотрим сегодня, давненько не было шейдерной магии, скучали?

Магия шейдеров 6: Glitch-эффект с аберрацией Shadermagic, Coremission, Gamedev, Магияшейдеров, Шейдеры, Гифка

Аберрацию получаем смещением UV в одном из каналов (зеленый как на гифке ниже) и меняю его по синусоиде. Соединяем каналы вместе и получаем такой эффект хроматической аберрации

Магия шейдеров 6: Glitch-эффект с аберрацией Shadermagic, Coremission, Gamedev, Магияшейдеров, Шейдеры, Гифка

Чтобы разбить на тайлы автор делает лерп между оригинальными координатами и checkerboard-like текстурой со случайными смещениями в RG каналах (гифка ниже)

Магия шейдеров 6: Glitch-эффект с аберрацией Shadermagic, Coremission, Gamedev, Магияшейдеров, Шейдеры, Гифка

Автор эффекта: Klemen Lozar. Пикабу не позволяет вставить ссылки на видео из вконтакте, я сдампил их в HD вконтакте: https://vk.com/coremission?w=wall-48132900_896

Показать полностью 2
Shadermagic Coremission Gamedev Магияшейдеров Шейдеры Гифка
11
123
DELETED
7 лет назад
Лига Разработчиков Видеоигр

2D Water в Unity 3D⁠⁠

Всем привет! =) Я начинающий (читать как очень хреновый) разработчик игр. Делал я как-то всякие кривости красивости для одной игры, которую мы пилили с братом (был тут пост про игру Plague Castle от моего брата, привет @LeeJSee), а именно воду, о которой и пойдет речь далее. Я сам не люблю, когда новичок, только что научившийся что-то делать, сразу бежит всех учить, но меня попросили написать этот пост, и я не мог отказать, потому что сам долго пытался найти реализацию такого эффекта. Меня попросил написать пост об этом пикабушник, в комментарии, так что пост для него. Если кому-то еще пригодится, я буду только рад, а особенно буду рад, если вы, уважаемые пикабушники и пикабушницы, поможете доделать эту воду =)

Гуляя по просторам интернета, я наткнулся на очень красивую (на мой взгляд) реализацию воды в игре Kingdom:

2D Water в Unity 3D Unity3D, Pixel Art, Шейдеры, Gamedev, Длиннопост, Гифка

Посмотрев на эту красоту, сразу же загорелся желанием сделать что-то подобное. Пару часов в гугле привели меня на какой-то сайт с шейдером (к сожалению не помню где я его скачал, извини автор, если это твой шейдер ). Открыв пример и посидев пару дней, пытаясь понять как это работает (я ведь уже говорил что я нуб?), я так ничего и не понял. Но протрезвев методом научного тыка мне удалось немного разобраться.


Итак, приступим!

Нам понадобится сам шейдер, две карты смещений, и небольшой скрипт, для создания анимации движения. (Ссылка на архив файлов тут)

Копируем все 4 файла в проект и создаем материал, назовем его например Water2D.

Далее нам нужно выбрать шейдер для нашего материала, он находится во вкладке Custom -> 2DWater:

2D Water в Unity 3D Unity3D, Pixel Art, Шейдеры, Gamedev, Длиннопост, Гифка

Так же нам нужно настроить сами карты смещений reflection и normal_detail.

Необходимо выставить Wrap mode с Clamp на Repeat и подтвердить нажатием Apply (вторая карта настраивается аналогично):

2D Water в Unity 3D Unity3D, Pixel Art, Шейдеры, Gamedev, Длиннопост, Гифка

Далее в Displacement Map 1 необходимо поставить reflections, а в Displacement Map 2 - normal_detail:

2D Water в Unity 3D Unity3D, Pixel Art, Шейдеры, Gamedev, Длиннопост, Гифка

Теперь нам необходимо создать камеру и поставить её в то место, под которым будет наша вода. А так же создать Render Texture, в которую мы будем рендерить изображение с нашей вспомогательной камеры, назовем её WaterTexture:

2D Water в Unity 3D Unity3D, Pixel Art, Шейдеры, Gamedev, Длиннопост, Гифка

Я настроил её так:

2D Water в Unity 3D Unity3D, Pixel Art, Шейдеры, Gamedev, Длиннопост, Гифка

Выберем нашу вспомогательную камеру и в поле Target Texture выберем нашу WaterTexture:

2D Water в Unity 3D Unity3D, Pixel Art, Шейдеры, Gamedev, Длиннопост, Гифка

Пропорции камеры изменятся согласно размеру нашей WaterTexture.

Теперь нам нужно создать объект, на который будет проецироваться изображение с нашей камеры. Этим объектом будет Plane (Нажимаем правой кнопкой в иерархии, выбираем Create-> 3D Object -> Plane) Он у нас повернут не так как нам надо:

2D Water в Unity 3D Unity3D, Pixel Art, Шейдеры, Gamedev, Длиннопост, Гифка

Для того чтобы он отражал так как нам нужно, его надо перевернуть вверх ногами и по горизонтали, для этого в трансформе настроим его как на картинке (также нужно его растянуть, по Х, чтобы он был по ширине вспомогательной камеры), а заодно настроим и остальное:

2D Water в Unity 3D Unity3D, Pixel Art, Шейдеры, Gamedev, Длиннопост, Гифка

Обязательно! Нужно выставить слой, я использую слой Water. По X и Z расположить так как вам необходимо, в Mesh Render выбрать наш материал Water2D.

В нашей вспомогательной камере необходимо отключить слой Water в Culling Mask:

2D Water в Unity 3D Unity3D, Pixel Art, Шейдеры, Gamedev, Длиннопост, Гифка

Перейдем в к нашему материалу Water2D, в нем необходимо в поле Render Texture выбрать WaterTexture.

Почти всё! =) Осталось немного настроить материал!

2D Water в Unity 3D Unity3D, Pixel Art, Шейдеры, Gamedev, Длиннопост, Гифка

Итак, быстренько пройдемся по материалу. Distortion Strenght 1 и 2 - позволяют нам сделать волны, чем больше число - тем сильнее искажение от волн. Color Tint задает цвет текстуры, им можно менять цвет воды, сделать её голубенькой или красной или какой хотите ещё. Foam Amount X и Y - это волны, тут лучше не переусердствовать, в моем проекте стоит число 0.00003. Foam Color - цвет волн, мне лучше всего подошли белые. Перспектива! Очень полезная вещь, чем ближе число к 1, тем сильнее растягивает нижний конец текстуры, и тем реалистичнее нам кажется движение воды.

Должно получиться что-то вроде этого:

2D Water в Unity 3D Unity3D, Pixel Art, Шейдеры, Gamedev, Длиннопост, Гифка

Но вот незадача! Ничего не двигается, картинка статична. Исправим это!

Для этого нам необходимо на наш объект Plane, навесить скрипт WaveAnimation, настроить скорости течения и выбрать в Renderer наш Plane (да, можно получить ссылку на меш рендерер в коде, но мне было лень)).

2D Water в Unity 3D Unity3D, Pixel Art, Шейдеры, Gamedev, Длиннопост, Гифка

Готово! Любуемся, подбираем значения в материале на глаз.

Должно получиться что-то вроде этого:

2D Water в Unity 3D Unity3D, Pixel Art, Шейдеры, Gamedev, Длиннопост, Гифка

Получилось слишком длинно, но надеюсь очень подробно. Если есть вопросы или предложения по данной реализации, пишите в комменты. Если есть способ сделать тоже самое более простым способом - обязательно пишите в комменты!

пс: БМ ругался на какие-то посты про мошенников и поликлинику.

пс2: С первым постом меня! =)

Показать полностью 13
[моё] Unity3D Pixel Art Шейдеры Gamedev Длиннопост Гифка
40
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии