Реализация проходимости

Физика в Unity

Реализация проходимости

Сообщение Woolf 28 июн 2010, 22:48

В процессе изучения юнити (под вполне конкретную задачу) возник вопрос.

Как реализовать зоны проходимости и непроходимости?
Например я точно хочу ограничить доступ игроку в некоторые места, в моём случае - виртуальная рыбалка, игрок может ходить строго по берегу озера, в лес не заходить и так далее. Т.к. всё остальное там построено таким образом, чтобы создавать декор, а не топтать грязными сапогами )

Я думал о том что можно конечно делать коллайдер один но это же неудобно.
Далее, мне надо отмечать как-то особые зоны, например зону болота, где игрок без сапог не может пройти.
Далее мне нужны зоны, где можно забросить удочку, а где нельзя. Например, в камышах нельзя ) Это лучше всего реализовать опять таки зонами.
Я видел некие layers в редакторе, там же можно задавать свои. Это что? Где можно про них почитать?

Это какбэ первый вопрос был, теперь второй..

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

Re: Реализация проходимости

Сообщение manjak 28 июн 2010, 22:57

наверное, тебе поможет Collider.isTrigger и сопутствующие OnTriggerEnter, OnTriggerExit.
manjak
UNец
 
Сообщения: 8
Зарегистрирован: 18 май 2010, 17:30

Re: Реализация проходимости

Сообщение Woolf 29 июн 2010, 00:02

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

Re: Реализация проходимости

Сообщение Golandez 29 июн 2010, 00:07

layers-слой .Например вы можете нужным ГО назначить слой,затем настройках поставить или игнорирование этого слоя или наоборот использование только его.Таким образом можно например сделать,чтобы только определенные обьекты отбрасывали тени или обьект игнорировал Raycast(слой есть в стандартном наборе) и т.д.
Ты нужен только тогда,когда нужен.(С)
Сказать спасибо
Аватара пользователя
Golandez
Пилигрим
 
Сообщения: 1637
Зарегистрирован: 06 авг 2009, 13:55
Откуда: Харьков
Skype: lestardigital

Re: Реализация проходимости

Сообщение Левш@ 29 июн 2010, 06:28

При попытке ставить траву на дно - она явно выводится уже после воды.

Что серьезно?
У меня нормально на дно сажаеться... :-?
_X.cor.R (Prologue)
Аватара пользователя
Левш@
Адепт
 
Сообщения: 4073
Зарегистрирован: 14 окт 2009, 16:34
Откуда: IBERIA
Skype: bars_levsha
  • Сайт

Re: Реализация проходимости

Сообщение Garu 29 июн 2010, 07:54

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

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

а на счет удочки, рейкаст, который как раз по леерам и щелкает, сделать что по камышам и прочим он не кидается, ну и все... в каком-то пасфаинде помню скрипт, звался "кликер" или как-то так, там тыкалка была с вопросами на счет лееров как раз, если найдешь - ковыряй, или пиши сам...
Аватара пользователя
Garu
UNITрон
 
Сообщения: 199
Зарегистрирован: 13 авг 2009, 18:26

Re: Реализация проходимости

Сообщение Zaicheg 29 июн 2010, 08:46

1. Как Гару написал. Делаешь модель нужной формы (описывающей твою непроходимую зону), кидаешь в юнити, отключаешь рендер, вешаешь триггер.

2. Рисуешь карту проходимости, чёрно-белое изображение. В Юнити проводишь соответствие между координатами твоей игровой зоны и пикселями карты-текстуры (масштаб по большому счёту определяешь). Затем смотришь положение игрока, считываешь соответствующий пиксель с карты (и соседние), определяешь, находится ли он в проходимой зоне и с каких сторон находятся проходимые зоны.
Дьяченко Роман
e-mail: _zaicheg.reg@gmail.com
skype: zaicheg12
vkontakte: _vk.com/zaichegq
Работа: _wie3.com _www.sanviz.com
Аватара пользователя
Zaicheg
Адепт
 
Сообщения: 3024
Зарегистрирован: 19 июн 2009, 15:12
Откуда: Череповец

Re: Реализация проходимости

Сообщение Woolf 29 июн 2010, 14:43

Вот по поводу второго варианта весьма интересно, это где-то реализовано? Посмотреть можно, или самому велосипеды изобретать?

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

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

Re: Реализация проходимости

Сообщение Woolf 29 июн 2010, 14:53

Что серьезно?
У меня нормально на дно сажаеться... :-?


Да сажается то она нормально, выглядит она так будто не на дне, а сверху.
Вот примерчик:

На одном скрине вода в режиме симпл, на другом уже фул рендер

Изображение Изображение

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

Re: Реализация проходимости

Сообщение Neodrop 29 июн 2010, 21:27

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


Вернуться в PhysX

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

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