|
3 / 3 / 0
Регистрация: 18.01.2024
Сообщений: 168
|
|
Как реализовать дрожание нагретого воздуха в пустыне?25.06.2025, 22:13. Показов 7200. Ответов 73
Всем привет!
Все, наверное, знают такое явление как дрожание воздуха вдалеке в жаркое время. Во многих играх вижу такой эффект. Пытался найти готовый актив в юнити стор, но не знаю как это явление называется на инглише. Пытаюсь написать в поиске trembling of air (дрожание воздуха), heat convection (конвекция тепла) и прочее, что придет в голову. Но ничего не находит, видимо это явление в инглише имеет какое-то особое название. Возможно кто-то знает, как это реализовать в юнити, подскажет гайд или готовый актив в ассет стор.
0
|
|
| 25.06.2025, 22:13 | |
|
Ответы с готовыми решениями:
73
Дрожание персонажа Дрожание объекта (Андроид) Дрожание камеры при вращении персонажа |
|
3 / 3 / 0
Регистрация: 18.01.2024
Сообщений: 168
|
||
| 29.06.2025, 21:01 [ТС] | ||
|
0
|
||
| 30.06.2025, 02:11 | |
|
1. Ограничить эффект - задача типовая, стандартное решение - простой объект, напр куб или цилиндр, шейдер считает длину луча/отрезка проходящего через такой объект. Их называют всяко, напр gizmo shape
2. Не уверен что отказываться от пост-эффектов - мудрое решение. Как сделать это одним проходом/рендером не видно, и это явно сложнее чем сама задача. А понадобится еще пост эффект - опять корячиться? Это не метод/подход. Кто такие birp, urp и др - не знаю, и учить чужую матчасть не хочу, мне не нужно. Требуется кадр отрендеренный в текстуру, как в примере шейдера для годот. Как это делается в юнитях - нужно спросить знатоков, может это делается без всякого urp 3. Часто слышал что шейдеры "рисуют" и (безуспешно) пытался объяснить что это неверно, шейдеры "шейдят". Разница в том что шейдер получает "свой" (суб)пиксель и обязан считать именно его (а не тот что хочет). Все данные (геометрия, материал и др) привязаны именно к этой точке/самплу, о других коду шейдера неизвестно ничего. Огромное число прекрасных идей разбилось именно об это ограничение. И, насколько мне известно, оно есть везде
0
|
|
|
Нарушитель
6334 / 3066 / 1054
Регистрация: 01.06.2021
Сообщений: 11,730
|
|
| 30.06.2025, 11:41 | |
|
alexsecl, я смог сделать то же самое, что делает тот платный ассет, использовав шейдер, который нашел в инете. Имею в виду, искажение по радиусу. Причем, в режиме BiRP.
Игра во вложении. Можешь оценить. Как будет выглядеть эффект зависит от текстуры, скорости, силы эффекта, радиуса, настроек тайлинга и т.д. Имею в виду, если что-то немного не нравится, то это все настраивается.
0
|
|
|
3 / 3 / 0
Регистрация: 18.01.2024
Сообщений: 168
|
||
| 30.06.2025, 12:17 [ТС] | ||
|
Если да, то есть ли возможность ограничить искажения только линией горизонта (настраивать высоту)? Например, вот реальное видео: Видно по горе на горизонте, что тепловая конвекция только у земли воздух колеблет: В том платном активе нет такого, там искажение по сфере идет, солнце, облака - все будет колебаться. У вас так же? PS: демку позже загрузили, ща гляну
0
|
||
|
Нарушитель
6334 / 3066 / 1054
Регистрация: 01.06.2021
Сообщений: 11,730
|
||||
| 30.06.2025, 12:30 | ||||
|
Добавлено через 9 минут alexsecl, принцип в том, что шейдер используется в материале сферы. Именно это было реализовано в том платном ассете. Т.е. тут можно настроить параметры эффекта, а также размеры сферы. Но не думаю, что можно кардинально что-то поменять, например, добавить какие-то ограничения по высоте.
0
|
||||
|
3 / 3 / 0
Регистрация: 18.01.2024
Сообщений: 168
|
|
| 30.06.2025, 12:42 [ТС] | |
|
Royal_X, Посмотрел демку, ваш эффект больше похож на эффект из игр, которые мы обсуждали The Long Drive и Gas Station Simulator. Видны паразитные искажения на ближнем кубе, который по идее не должно колыхать. Почему такое происходит?
В платном ассете такого нет, там ближние объекты вообще не получают никаких искажений. А если в вашем проекте сделать карту побольше (1000х1000) радиус эффекта тоже побольше сделать (на растоянии 200-300 от персонажа), ближние объекты тоже на краях будут колебаться?
0
|
|
|
Нарушитель
6334 / 3066 / 1054
Регистрация: 01.06.2021
Сообщений: 11,730
|
|
| 30.06.2025, 12:59 | |
|
alexsecl, да, на краях какие-то артефакты даже у ближних объектов, тем не менее, на самих ближних объектах искажений нет, как и должно быть
Добавлено через 13 минут alexsecl, вроде получилось исправить. Проверь теперь игру во вложении.
0
|
|
|
3 / 3 / 0
Регистрация: 18.01.2024
Сообщений: 168
|
||
| 30.06.2025, 13:21 [ТС] | ||
|
А можете сцену более масштабной сделать? По аналогии демки платного актива. Сделать плоскость-землю больше (1000х1000), поставить большие кубы вдалеке (имитация гор на горизонте) и радиус действия эффекта мерцания отодвинуть от игрока на 200-300 метров.
0
|
||
|
Нарушитель
6334 / 3066 / 1054
Регистрация: 01.06.2021
Сообщений: 11,730
|
||
| 30.06.2025, 13:59 | ||
|
0
|
||
|
3 / 3 / 0
Регистрация: 18.01.2024
Сообщений: 168
|
|
| 30.06.2025, 15:05 [ТС] | |
|
Royal_X, Ответил в личку.
И я вот что еще подумал, когда тестировал ваш эффект. Там используется сфера для отрисовки искажений. А если взять не сферу, а куб... Сделать его высотой метр, к примеру. Опустить чуть ниже камеры и отключить его поворот вместе с камерой (только перемещение с персонажем), чтобы он был всегда параллелен земле. Теоретически же тогда не будет искажаться объекты выше этого куба (солнце, облака, вершины гор и т.д), не?
0
|
|
| 30.06.2025, 15:36 | ||||
Заметим что FPS он сожрет заметно, хотя и не смертельно
0
|
||||
|
3 / 3 / 0
Регистрация: 18.01.2024
Сообщений: 168
|
|
| 30.06.2025, 15:40 [ТС] | |
|
Royal_X, В вашем примере сфера с вывернутыми внутрь нормалями? Т.е. сфера создана не в unity, а в стороннем графическом редакторе? просто если в юнити создать сферу/куб и применить к ним ваш шейдер, то изнутри его не видно, только снаружи..
0
|
|
|
Нарушитель
6334 / 3066 / 1054
Регистрация: 01.06.2021
Сообщений: 11,730
|
|||
| 30.06.2025, 15:56 | |||
|
Добавлено через 3 минуты
0
|
|||
|
3 / 3 / 0
Регистрация: 18.01.2024
Сообщений: 168
|
||
| 30.06.2025, 16:38 [ТС] | ||
|
В принципе получилось уже похоже на что-то реальное) Heat Haze Test Video Единственно, что нужно этот объект с эффектом совсем убрать из дочерних персонажа, т.к. видно, что по горизонтали поворачивается вместе с персонажем и искажения плывут. Ставить отдельно от персонажа и применить что-то типа follow to, чтобы он просто перемещался без поворотов куда либо.
0
|
||
|
Нарушитель
6334 / 3066 / 1054
Регистрация: 01.06.2021
Сообщений: 11,730
|
|||||||
| 30.06.2025, 16:51 | |||||||
|
но этот объект можно легко убрать из дочерних, по сути, объект не должен менять свою y координату в пространстве. А вот x и z берутся с позиции персонажа. Добавлено через 9 минут alexsecl, прикрепи это к объекту с эффектом. В инспекторе выбери персонажа.
0
|
|||||||
|
3 / 3 / 0
Регистрация: 18.01.2024
Сообщений: 168
|
||
| 30.06.2025, 16:54 [ТС] | ||
|
0
|
||
|
Нарушитель
6334 / 3066 / 1054
Регистрация: 01.06.2021
Сообщений: 11,730
|
|
| 30.06.2025, 16:56 | |
|
alexsecl, ну как хочешь. Выше я тебе написал код, который поможет убрать объект с эффектом из дочерних. Тебе всего лишь нужно будет правильно разместить объект с эффектом по высоте, а вот x, z он будет брать у персонажа. Таким образом, не будет ни проблемы с прыжком, ни с горизонтальным вращением.
0
|
|
|
3 / 3 / 0
Регистрация: 18.01.2024
Сообщений: 168
|
|
| 30.06.2025, 18:00 [ТС] | |
|
Royal_X, Не увидел код (позже добавил). Сейчас попробую его вставить.
Добавлено через 1 час 0 минут Royal_X, В общем, все работает. При невысоких запросах к визуалу, вполне можно использовать. Есть две особенности при этом методе. Первая: если использовать не сферу, а боковину цилиндра как у меня, видна резкая граница "есть колебание/нет колебания). Если там на горизонте много объектов, то эта граница хорошо видна. И второе: Например, персонаж идет по пустыне, вокруг него тепловое колебание воздуха, как и должно быть. Но вот он начинает подходить к другому биому, где не должно быть такого колебания, но оно все равно будет, пока он не выйдет с биома пустыни и пока не сработает скрипт отключения шейдера. В общем, при некоторых плюсах, есть минусы. Сейчас общаюсь с человеком на кворке, который, якобы, сможет сделать локальное искажение. Т.е. можно назначить на любой объект (костер, факел) или обозначить зону на террейне, где должен проявляться этот эффект. Просит 200 зеленых за работу.. Пока размышляю, стоит ли оно того. Может быть и стоило, если бы я уже видел готовый результат, но его нету и будет ли он соответствовать ожиданиям/обещаниям, пока не ясно)
0
|
|
|
Нарушитель
6334 / 3066 / 1054
Регистрация: 01.06.2021
Сообщений: 11,730
|
||||
| 30.06.2025, 18:19 | ||||
|
Добавлено через 4 минуты 2 проблема уже посложнее, поскольку требует пересмотра всего подхода.
0
|
||||
|
3 / 3 / 0
Регистрация: 18.01.2024
Сообщений: 168
|
|||
| 30.06.2025, 18:24 [ТС] | |||
|
Самое простое, что можно сделать, это пустыню чем-то оградить. Поставить вокруг нее заградительные холмы, горы, каньон. В общем, то, что не даст смотреть вдаль за пределы пустыни. Тогда в-принципе будет нормально.
0
|
|||
| 30.06.2025, 18:24 | |
|
Машина врезается в воздух
Персонаж импортировался в воздухе и оси в управлении инвертированы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Nekobox - outbounds[0].transport: unknown transport type: raw
damix 01.10.2026
Фикс ошибки
Правым кликом по серверу -> отладочная информация -> edit
Заменить "net": "raw", на "net": "tcp",
Нажать кнопку reload.
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|