Вход

Просмотр полной версии : Создание лужи


Tosyk
06.09.2021, 12:14
способ не проверен, но описан мастером своего дела djbozkosz в конце декабря 2020 года.

Итак, что же это за лужи такие:

https://mafia-game.ru/forum/imgcache/2021/09/06/vhqyehd7hzxqhgudbdrtcsmu.jpg https://mafia-game.ru/forum/imgcache/2021/09/06/kba8cqzqdkqrpgjh.jpg https://mafia-game.ru/forum/imgcache/2021/09/06/w3dfgngjqmfwrwlnxqqhvuf.jpg https://mafia-game.ru/forum/imgcache/2021/09/06/avqxyrpj0xpdnrrfuyn.jpg
https://mafia-game.ru/forum/imgcache/2021/09/06/ezfveamlrwcpzgampcrne6mn.jpg

Это создано с помощью статических карт окружения. Эти карты затем были применены к специальной плоскости, которая висит на 1 см выше над землёй. Эта специальная плоскость использует прозрачность типа alpha blend.
djbozkosz:it is several static env maps.
used on extra alpha blended geometry placed 1 cm above normal geometry.
Я сделал несколько снимков из одного места в MWE редакторе. Затем я обрезал их и использовал hugin (бесплатный инструмент для создания панорамы), чтобы сшить вместе.
djbozkosz:i have captured several pics from one place in MWE. then i have cropped them and used hugin (free panorama tool) to stitch them together.

вот такие картинки получаются в MWE:

https://mafia-game.ru/forum/imgcache/2021/09/06/vskuplsfxjmhxnp6lqypy.jpg

настройки в hugin:

https://mafia-game.ru/forum/imgcache/2021/09/06/atfy2chljyaydbfvgazgycmh.jpg

проекция "fish eye".
интересно, что здания в отражениях получаются ровными, как и в моих предыдущих попытках создавать карты окружения вручную. Да и кстати альфа-маска на лужах временная.
djbozkosz:projection is "fish eye".
interesting is: buildings are straight. nothing is twisted, like in my previous attempts of generated env maps. puddle mask is temporary. i will tweak it later.

Romchi
06.09.2021, 19:28
А если вместо статичных карт отражений, на плоскость накинуть зеркало mirror и сделать viewbox на всю локацию. Интересно сработает ?:D

User
07.09.2021, 16:26
А если вместо статичных карт отражений, на плоскость накинуть зеркало mirror и сделать viewbox на всю локацию. Интересно сработает ?:D
Думаю все, как обычно, упрется в ограничения LS3D, что-то мне подсказывает, что статика, для решения задачи с лужами, более оптимальна.

Streetball
09.09.2021, 06:21
https://mafia-game.ru/forum/imgcache/2021/09/06/kba8cqzqdkqrpgjh.jpg
Раннее утро, ночной дождь умыл улицы, побежали первые трамваи, город начинает просыпаться... Кайф

User
09.09.2021, 08:38
Раннее утро, ночной дождь умыл улицы, побежали первые трамваи, город начинает просыпаться... Кайф
Есть авторский видос под катом, там атмосфера, все дела. Первая часть ролика техническая, чистый "геймплей" начинается с 18:01.

XMJQToe5Ndw

P.s. в описании (на ютубе) к видео есть ссылка для скачивания сцены/мода, можно побродить.

Romchi
08.12.2021, 01:22
А если вместо статичных карт отражений, на плоскость накинуть зеркало mirror и сделать viewbox на всю локацию. Интересно сработает ?:D Решил проверить на деле.

Abradox
08.12.2021, 01:49
неплохо, но фпс наверное очень низкий и с шейдерной водой оно не дружит вроде.

Romchi
08.12.2021, 01:57
Abradox, Я не заметил жёстких проседаний фпс. Здесь небольшой участок дороги отражает. Мне было интересно взглянуть, будет ли работать.

Romchi
09.12.2021, 22:38
В своём методе создания отражений, я применил к дорогам карту прозрачности - текстуру с "+". Плоскость зеркала расположил под дорогой. Но появилась проблема - на землю не ложатся свет от фар, тени от персонажа и авто, декали крови, а при торможении на машине, следы которые остаются от шин, превращаются в дыры на дороге.

KlassenAS
09.12.2021, 23:30
Я не заметил жёстких проседаний фпс. Здесь небольшой участок дороги отражает. Мне было интересно взглянуть, будет ли работать.
Так, по идее, большой отражающий участок и не нужен.
Почему бы не наделать много таких зеркал и прикрутить к ним лоды или что-то ещё, чтобы активировались только ближайшие к игроку?
Думаю, подобным способом можно оптимизировать производительность для зеркальных луж.

Romchi
10.12.2021, 00:02
Вот такой происходит баг на асфальте.
https://mafia-game.ru/forum/imgcache/2021/12/09/jgukwnqarkqwhtcn8ygburrx.jpg

Abradox
10.12.2021, 14:50
В своём методе создания отражений, я применил к дорогам карту прозрачности - текстуру с "+". Плоскость зеркала расположил под дорогой. Но появилась проблема - на землю не ложатся свет от фар, тени от персонажа и авто, декали крови, а при торможении на машине, следы которые остаются от шин, превращаются в дыры на дороге.А почему под дорогой? Как она будет что-то отражать, если над ней текстура асфальта и мы зеркало не видим? Или я что-то не так понял?
Вот такой происходит баг на асфальте.
https://mafia-game.ru/forum/imgcache/2021/12/09/jgukwnqarkqwhtcn8ygburrx.jpgС фэйковыми отражениями подобного бага нет, значит он связан именно с эффектом плоскости зеркала или ошибка в последовательности слоев.

Firefox3860
10.12.2021, 15:21
А почему под дорогой? Как она будет что-то отражать, если над ней текстура асфальта и мы зеркало не видим? Или я что-то не так понял?Текстура асфальта делается полупрозрачной с помощью альфы, чтобы дорога не выглядела совершенно зеркальной. Сквозь неё видим заркало. В идеальном случае зеркало и асфальт должны находиться в одной плоскости (для правильности отражений), но в нашем случае это невозможно, поэтому зеркало ставится чуть ниже асфальта, а не выше, конечно же :D
Вот такой происходит баг на асфальте.Это по-моему из-за применения эффекта альфы к асфальту. След от колёс машины - это тоже полупрозрачная поверхность, поднятая чуть выше асфальта. Наверное, потому возникает конфликт при наложении на другую прозрачность.

Abradox
10.12.2021, 16:10
Надо наоборот сделать, слой зеркала положить выше асфальта и к нему применить альфаканал, тогда на асфальт не будут накладываться никакие ненужные эффекты.

Мне кажется именно так сделано у Boz'а только вместо зеркала используются фэйковые карты отражений.
Или к зеркалу альфаканал невозможно применить?

Firefox3860
10.12.2021, 16:34
Abradox, Именно, что нельзя (и как мы до этого не додумались :D). У зеркала нет какой-то "зеркальной текстуры", поэтому и альфы тоже нет.
Ещё кстати, в автоэнциклопедии так же сделан круг под машину.
У Boz'а сделано ещё проще - технология воды в реке в сельской местности - асфальт с альфой и перевёрнутые модели всего, что "отражается". Даже без зеркал.

Abradox
10.12.2021, 16:55
У нас могут быть ДОПОЛНИТЕЛЬНЫЕ проблемы с отражениями города из шейдерной воды, если текстуры асфальта сделать прозрачными как у Boza. Из-за отражений шейдерной воды некоторые эффекты Решейда не работает корректно, например ambient occlusion. Это всё нужно проверять.

Romchi
10.12.2021, 17:18
Кстати отражения в шейдерной воде сделаны как раз упрощенной копией города, перевёрнутой "вверх ногами" под водой.

Firefox3860
10.12.2021, 17:40
У нас могут быть ДОПОЛНИТЕЛЬНЫЕ проблемы с отражениями города из шейдерной воды, если текстуры асфальта сделать прозрачными как у Boza.А какие могут быть ДОПОЛНИТЕЛЬНЫЕ проблемы с ними? Могут быть только те, что уже есть в этом решейде, или где там ещё. Мне кажется, это связано не с отражениями воды, а с самой водой, потому что она там неизвестно как сделана.

Romchi
10.12.2021, 20:15
Mr F писал на мафия сцене о том как он это сделал. Цитирую: "Как вы знаете, Mafia использует DirectX8, но не использует весь его доступный потенциал. Поэтому я попытался исправить это и заменить ужасную исходную воду на шейдерную. Для этого я подключил игровые вызовы к directx и немного изменил процесс рендеринга, также я написал шейдеры, но они не слишком навороченные, потому что максимальная поддерживаемая модель шейдеров dx8 - 1.4, что довольно давно."

Abradox
11.12.2021, 02:30
Мне кажется, это связано не с отражениями воды, а с самой водой, потому что она там неизвестно как сделана.Очень может быть.