Подводный мир в Unity3D

Speed Tree : Terrain & Trees.

Подводный мир в Unity3D

Сообщение Master 07 май 2010, 09:46

Так вот, моя проблема в том что его вобще нет. Когда камера погружается в воду из StandartAssets/Water, вся вода исчезает. Пробововал юзать шейдер Underwater surface из Demo Islands, но все равно
ничего не катит. Может я что-то делаю не правильно?
Жизнь - это игра, а люди - просто боты. Я учусь создавать игры...
Аватара пользователя
Master
UNец
 
Сообщения: 9
Зарегистрирован: 07 май 2010, 09:40
Откуда: Харьков

Re: Подводный мир в Unity3D

Сообщение Golandez 07 май 2010, 09:53

Написать другой шейдер и сделать взвесь в воде партиклами-аля Bioshock 2.

P.S. Выражение "все равно не катит" абсолютно ни о чем не говорит.
Ты нужен только тогда,когда нужен.(С)
Сказать спасибо
Аватара пользователя
Golandez
Пилигрим
 
Сообщения: 1637
Зарегистрирован: 06 авг 2009, 13:55
Откуда: Харьков
Skype: lestardigital

Re: Подводный мир в Unity3D

Сообщение HAWK 10 май 2010, 22:57

Посмотри тут
Скрытый текст:
Аватара пользователя
HAWK
UNец
 
Сообщения: 2
Зарегистрирован: 09 май 2010, 17:36
Откуда: Киев

Re: Подводный мир в Unity3D

Сообщение Neodrop 10 май 2010, 23:22

HAWK, это типа реклама мёртвого портала? :-?

По теме - вы не шейдеры в проект кидайте, а посмотрите, как этот эффект работает в Island Demo. Там всё не так уж просто - и скрипт на камере и смена постэффектов и смена дистанции видимости и настроек fog-a
Волшебной палочки не бывает. Немного думать надо.
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт

Re: Подводный мир в Unity3D

Сообщение Garu 11 май 2010, 01:05

Эээ... Сорь, но про шейдеры даже вбило в ступор... Мне кажется тут даже интуитивно идет...
Допустим взяли куб и нам нужно что бы он был водой, ладно, поверхности можно склепать шейдером и вуаля, но внутри он все равно пустой... как же с этим быть? Делать шейдер, аля мех (где-то тут был fur shader вродь звался) который даст там Н слоев текстуры по 1 поверхности, куб с длинной метров 50, сколько ж нам надо будет таких слоев? с каким промежутком? а что будет если случайно повернуться? Так что боюсь такой шейдер нажрал бы нагрузки нехилой... Тогда давайте включим голову и пойдем иным путем, что если шейдер повесить перед мордой аки морковку для ездовых кроликов? О да детка! Это может сработать! - вот так можно пробовать думать, если нужно видеть постоянно где-то воду, то надо эту воду носить с собой =) Проще говоря, при самом просто-топорном решении, можн перед камерай повесить полигонину, на него навесить какой-нить шейдер и вуаля, даж пузырьков добавить и все смачненько, после чего активация его если попадаешь в воду... как смутить так, что бы только наступив в воду не увидели этот фаршмак перед глазами? Опять же включаем голову и идем вариантами: 1 - копируем объект с водой по форме и опускаем на нужную глубину, что б только голова под водой - начиналось представление... 2 - вешаем активацию на камеру (как она под водой - все это созерцаем), если же нужен реально хитро-качественный эффект, мы не паримся с полигоном а реально берем блюр, можно даже глоу, можно еще чет своего добавить, даже вернуть полигон и сделать полупрозрачным-синим для добавления эффекта присутствия, а если задрочиться - сделать шоб он переливался и - тадам! Под водой мы как под водой...
В общем, как говорил Док Браун - Мысли четырехмерно =)
Аватара пользователя
Garu
UNITрон
 
Сообщения: 199
Зарегистрирован: 13 авг 2009, 18:26

Re: Подводный мир в Unity3D

Сообщение HAWK 11 май 2010, 01:32

Neodrop писал(а):HAWK, это типа реклама мёртвого портала? :-?


Нет. Просто как-то набрел туда, вот и решил помочь.
Аватара пользователя
HAWK
UNец
 
Сообщения: 2
Зарегистрирован: 09 май 2010, 17:36
Откуда: Киев

Re: Подводный мир в Unity3D

Сообщение Neodrop 11 май 2010, 02:18

Да это я так шучу просто. :D
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт

Re: Подводный мир в Unity3D

Сообщение Woolf 29 июл 2010, 17:32

По поводу воды вообще много вопросов возникает.
Мне вот нужна вода, которая ближе к берегу более прозрачная, чем глубже, тем менее, ну как оно в реальности вообще-то. Т.е этакий эффект плотности воды. Я был как-то сделал при помощи лайтмапы, но это не выход, как оказалось, такое решение порождает много проблем и не решает проблемы с подводными объектами. Возможно, у кого либо есть более адекватное решение воды?

Я думаю, копать имеет смысл в сторону volume fog, однако о такой распространённой фиче юнити почему-то не знает. По крайней мере, я не нашёл ничего ни на форуме, ни в инете.

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

Так и в конце вопрос - кто же может помочь разобраться, как сделать адекватную воду? Ибо вода в моей игре (реки, озёра) это чуть-ли не основное..
Разработчик theFisherOnline - там, где клюёт
Разработчик Atom Fishing II - Первая 3D MMO про рыбалку
Разработчик Atom Fishing - Рыбалка на поплавок, донку, нахлыст, блесну в постъядерный период.
Аватара пользователя
Woolf
Адепт
 
Сообщения: 7179
Зарегистрирован: 02 мар 2009, 16:59

Re: Подводный мир в Unity3D

Сообщение Paul Siberdt 29 июл 2010, 17:49

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

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


Если вы хотите сделать все и сразу.. и берег, и надводную поверхность и подводную среду и физику плавстредств... желательно подумать о фокусе проекта и постараться обрезать ненужные моменты. Возможно, сине-зеленого тумана будет достаточно для шутера при случайном попадании героя в воду.
Аватара пользователя
Paul Siberdt
Адепт
 
Сообщения: 5317
Зарегистрирован: 20 июн 2009, 21:24
Откуда: Moscow, Russia
Skype: siberdt
  • Сайт

Re: Подводный мир в Unity3D

Сообщение Woolf 29 июл 2010, 18:21

Что я не так объяснил?
Я хочу сделать вот так (решение через лайтмапу)

Изображение

и вот так (это Torque)

Изображение

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

Меня интересует, имеются ли подобные наработки, или же опять делать велосипед.


А по поводу андерватер - вот самый простой вариант
http://www.unifycommunity.com/wiki/inde ... ter_Script
Разработчик theFisherOnline - там, где клюёт
Разработчик Atom Fishing II - Первая 3D MMO про рыбалку
Разработчик Atom Fishing - Рыбалка на поплавок, донку, нахлыст, блесну в постъядерный период.
Аватара пользователя
Woolf
Адепт
 
Сообщения: 7179
Зарегистрирован: 02 мар 2009, 16:59

Re: Подводный мир в Unity3D

Сообщение Paul Siberdt 29 июл 2010, 19:21

А какого характера вопросы возникают при использовании затемнения лайтмапой?

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

Насчет прибрежных волн, NeoDrop советовал пользовать для этого его Антаресовый редактор дорог. На худой конец можно самому создать ноды и строить по ним прибрежный меш.
Аватара пользователя
Paul Siberdt
Адепт
 
Сообщения: 5317
Зарегистрирован: 20 июн 2009, 21:24
Откуда: Moscow, Russia
Skype: siberdt
  • Сайт

Re: Подводный мир в Unity3D

Сообщение Woolf 29 июл 2010, 20:09

А какого характера вопросы возникают при использовании затемнения лайтмапой?


Ну во первых - проблемы с подводными объектами, они не затемняются
Во вторых (хотя тут я не уверен) - хотелось бы иметь тень от деревьев, расставленных на террейне, при включении освещения террейна через лайтмап - тени от деревьев пропадают (подозреваю, что тут имеется некий доп инструментарий, который может запечь тени от деревьев в лайтмапу, но у меня его нет)

- пиксельным шейдером

Вот это я и хочу сделать, ведь этот шейдер можно применять к любым подводным объектам, не только к террейну. Такое кто либо делал или самому писать? Я как-бы GLSL неплохо знаю, но вот с шейдерами юнити (тут некий свой фреймворк) работать не приходилось..

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

Спасибо, обязательно посмотрю редактор.
Разработчик theFisherOnline - там, где клюёт
Разработчик Atom Fishing II - Первая 3D MMO про рыбалку
Разработчик Atom Fishing - Рыбалка на поплавок, донку, нахлыст, блесну в постъядерный период.
Аватара пользователя
Woolf
Адепт
 
Сообщения: 7179
Зарегистрирован: 02 мар 2009, 16:59

Re: Подводный мир в Unity3D

Сообщение Paul Siberdt 29 июл 2010, 20:34

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

Насчет конфликта теней от деревьев и лайтмапы... нууу... этим в Юне я не занимаюсь и посоветовать ничего не могу :)
Последний раз редактировалось Paul Siberdt 29 июл 2010, 20:47, всего редактировалось 1 раз.
Аватара пользователя
Paul Siberdt
Адепт
 
Сообщения: 5317
Зарегистрирован: 20 июн 2009, 21:24
Откуда: Moscow, Russia
Skype: siberdt
  • Сайт

Re: Подводный мир в Unity3D

Сообщение Woolf 29 июл 2010, 20:36

Ну это хорошо для объектов, которые мелкие и целиком под водой, а вот с торчащими наружу - например камень или дерево - не пройдёт..
Так что изучаю шейдерный фреймворк..
Разработчик theFisherOnline - там, где клюёт
Разработчик Atom Fishing II - Первая 3D MMO про рыбалку
Разработчик Atom Fishing - Рыбалка на поплавок, донку, нахлыст, блесну в постъядерный период.
Аватара пользователя
Woolf
Адепт
 
Сообщения: 7179
Зарегистрирован: 02 мар 2009, 16:59


Вернуться в Земля и деревья.

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3