Краш при большом количестве физ. коллайдеров

Ошибки и баги Unity3D

Краш при большом количестве физ. коллайдеров

Сообщение Shi 11 мар 2011, 14:52

Здравствуйте. Имеются 7 зон, 2000х2000х513. Они засаживаются деревьями с Capsule collider с помощью Mass Place Trees, со значением 10000. Грубо говоря, на каждую зону по 10000 деревьев. Как только их становится больше 60к+, при нажатии кнопки play программа вылетает, хотя какие бы то ни было лаги\фризы и т.д. отсутствуют. Подскажите пожалуйста, как обойти подобную проблему?
Аватара пользователя
Shi
UNITрон
 
Сообщения: 211
Зарегистрирован: 30 ноя 2010, 14:58
Откуда: Санкт-Петербург

Re: Краш при большом количестве физ. коллайдеров

Сообщение Zaicheg 11 мар 2011, 14:59

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

Re: Краш при большом количестве физ. коллайдеров

Сообщение Shi 11 мар 2011, 15:04

Zaicheg писал(а):Да, вроде есть ограничение на 64 тысячи коллайдеров в сцене. Как решение -- может быть убирать коллайдеры на деревьях вне зоны видимости?

К сожалению, в случае если приложение серверное, ему необходимо рассчитывать столкновения всех коллайдеров в сцене. (о разделении серверной обработки на несколько сцен-приложений при одном "клиенте"-сцене в данный момент речи не идет).
К тому же включение\отключение галочки "Generate Tree Collider" в реалтайме не дает эффекта.
Есть ли какой либо способ обойти\отключить это ограничение?
Аватара пользователя
Shi
UNITрон
 
Сообщения: 211
Зарегистрирован: 30 ноя 2010, 14:58
Откуда: Санкт-Петербург

Re: Краш при большом количестве физ. коллайдеров

Сообщение Neodrop 11 мар 2011, 15:59

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

Re: Краш при большом количестве физ. коллайдеров

Сообщение Shi 11 мар 2011, 16:53

Neodrop писал(а):В приложении не может быть более 65550 активных физ. объектов.

Спасибо за информацию. Можно ли как нибудь изменить подобный лимит?
Аватара пользователя
Shi
UNITрон
 
Сообщения: 211
Зарегистрирован: 30 ноя 2010, 14:58
Откуда: Санкт-Петербург

Re: Краш при большом количестве физ. коллайдеров

Сообщение Paul Siberdt 11 мар 2011, 16:56

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

Re: Краш при большом количестве физ. коллайдеров

Сообщение Shi 11 мар 2011, 17:06

Paul Siberdt писал(а):Можно статической геометрии назначить один единственный коллайдер.

Правильно ли я вас понял, что можно назначить группе деревьев принудительно (в обход Террайна) коллайдер? Но он будет слишком глобален, и не будет допускать проход "между деревьями".
Если вы имели ввиду что либо другое, подскажите пожалуйста, как это сделать в данном случае (применимо к Террейну\деревьям)?
Аватара пользователя
Shi
UNITрон
 
Сообщения: 211
Зарегистрирован: 30 ноя 2010, 14:58
Откуда: Санкт-Петербург

Re: Краш при большом количестве физ. коллайдеров

Сообщение Paul Siberdt 11 мар 2011, 17:16

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

Re: Краш при большом количестве физ. коллайдеров

Сообщение Shi 11 мар 2011, 17:23

Paul Siberdt писал(а):Любой хитроумный статический меш можно представить коллайдером, при этом не нужно включать режим рассчета выпуклой формы (флаг Convex). 65 тысяч коллайдеров, если их собрать в единую геометрию, начнут конфликтовать с максимальным размером треугольников в модели :)
Думаю, надо иначе подойти к структуре уровня. Уверен, вариантов решения достаточно.

Большое спасибо за идею, попробую поработать с мешем.
Структура итак гм.. упрощена. Но вы правы, всегда можно еще сильнее упростить, просто хотелось обойтись без этого.
Что странно: сейчас в тестовой сцене с одним террейном поставил на террейн 500 000 деревьев с коллайдерами, и краша не было. Занимательно.
Аватара пользователя
Shi
UNITрон
 
Сообщения: 211
Зарегистрирован: 30 ноя 2010, 14:58
Откуда: Санкт-Петербург

Re: Краш при большом количестве физ. коллайдеров

Сообщение Shi 11 мар 2011, 17:46

Проблема решена, баг это или нет - не мне решать:
При использовании Capsule коллайдера при количестве физ объектов больше 65 000 программа вылетает.
Поэтому имеет смысл использовать Box коллайдер, который поддерживает более 500 000 объектов без вылетов и проблем (а так же теоретически быстрее).
Аватара пользователя
Shi
UNITрон
 
Сообщения: 211
Зарегистрирован: 30 ноя 2010, 14:58
Откуда: Санкт-Петербург

Re: Краш при большом количестве физ. коллайдеров

Сообщение Neodrop 11 мар 2011, 22:44

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

Re: Краш при большом количестве физ. коллайдеров

Сообщение Shi 11 мар 2011, 22:49

Neodrop писал(а):Вы это проверяли? :-?
Я именно с боксами вылетал на 65550 объектов. ;;)

Проверил. Могу выложить сцену.
Аватара пользователя
Shi
UNITрон
 
Сообщения: 211
Зарегистрирован: 30 ноя 2010, 14:58
Откуда: Санкт-Петербург

Re: Краш при большом количестве физ. коллайдеров

Сообщение Neodrop 12 мар 2011, 14:44

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

Re: Краш при большом количестве физ. коллайдеров

Сообщение Syberex 14 мар 2011, 13:35

А почему для дереьев пытались испльзовать капсульные коллайдеры?
Вам нужен только ствол или все дерево в целом?
Аватара пользователя
Syberex
Адепт
 
Сообщения: 2292
Зарегистрирован: 14 янв 2011, 20:35
Откуда: Кострома
  • Сайт

Re: Краш при большом количестве физ. коллайдеров

Сообщение Shi 14 мар 2011, 18:08

Syberex писал(а):А почему для дереьев пытались испльзовать капсульные коллайдеры?
Вам нужен только ствол или все дерево в целом?

Только ствол, так как при увеличении числа деревьев, число коллайдеров растет слишком стремительно. И с 100 000 деревьев иметь гмм.... много-много коллайдеров это не лучший для меня выход. (если, конечно, имелся ввиду "составной коллайдер". Меш-коллайдеры не использую по причине слишком большой нагрузки даже по сравнению со сложными примитивами. Но, кстати, в этом вопросе я могу ошибаться.)
Капсульные коллайдеры я изначально выбрал по той причине, что необходимо более-менее правдоподобное взаимодействие "ствола дерева" с окружением,(до этого в Newton Physics Engine ставил цилиндры, но тут их не нашел, к тому же это, как мне думается не решило бы проблему - на расчет цилиндра,сферы и т.д. сложных форм уходит значительно больше ресурсов),т.е. при ударе "чего то" в визуально округлое дерево при капсуле оно отклонится адекватно, по касательной и т.п., а при кубе врежется как в стену, без отклонения.
Аватара пользователя
Shi
UNITрон
 
Сообщения: 211
Зарегистрирован: 30 ноя 2010, 14:58
Откуда: Санкт-Петербург

След.

Вернуться в Глюки

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

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