Оптимизация игры в Unity3d

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

Оптимизация игры в Unity3d

Сообщение krasota07 24 ноя 2011, 10:53

Есть идеи, но хочу спросить у профессионалов как лучше реализовать, чтобы производительность игры в итоге была наивысшей. Потому что это будет самый главный параметр для игры. Может быть от чего-то придется отказаться, так как нельзя реализовать нересурсоемко.
Итак, игра - экшен, варгейм, 3д. В игре большое количество боевой техники. Техника полностью состоит из отдельных модулей, из которых игрок/АИ могут составлять новую технику. Около 5-20 модулей на машину. Графика очень упрощенная, отдельный модуль может представлять собой даже простой параллелепипед. Для среднего размера боевой машины должно хватить текстуры 512х512. При этом необходимо дать возможность игроку/АИ раскрашивать свою технику. Каждый модуль будет иметь свою анимацию(например шасси с 6 ногами или выезжающий из башенки перед выстрелом ствол). Также поврежденный модуль исчезает прямо в бою, а при починке появляется опять.
Предполагаемая загруженность уровня - возможны ситуации когда в пределах видимости будет в среднем 50 боевых машин, они будут одновременно стрелять со средней скорострельностью 3-10 выстрелов в секунду. Собственно, хочется хотя бы направления в сторону методов обеспечивающих такие возможности с наибольшей производительностью. Отдельно меня беспокоит физика. С учетом уже описанных параметров боя, насколько ресурсоемким будет просчет физики, если каждый снаряд - физический обьект с размером и скоростью.
Напоследок вопрос про спецэффекты. В игре не требуется реалистичность, но базовые спецэффекты должны присутствовать, да и каких способов стоить избегать, чтобы избежать проседаний(так теней почти не будет). Вопрос в том какие методы обеспечат меньшую ресурсозатратность. Например: след от полета ракеты, дым(или его подобие), расширяющаяся прозрачная сфера от попадания плазмы, разные вспышки и т.д.
Спасибо за внимание.
Аватара пользователя
krasota07
UNец
 
Сообщения: 1
Зарегистрирован: 20 ноя 2011, 11:17

Re: Оптимизация игры в Unity3d

Сообщение VVM 24 ноя 2011, 11:40

Поделюсь парой своих мыслей.
1. Насколько я помню, в игре "Dune 2" еще на Sega Mega Drive, просто банально стояло ограничение по кол-ву техники и строений на уровень.
2. Можно скорострельность понизить в разумных пределах.
3. Occlusion culling.
4.
Около 5-20 модулей на машину.
Можно покопать в строну "объединения модулей", что ли. Чтобы готовый юнит представлялся единым мешем. Я как-то сцену небольшую по туториалу делал, ракетница и много ящиков... штук 100-200. Просчет разноса ящиков ракетой был очень ресурсоемким. Или обширная густая трава. Она способна "посадить" почти любой GPU до нескольких FPS )) Поэтому, ИМХО, много мелких объектов - не айс =)
5. Ну и конечно - гибкая система настройки графики (чтобы можно было отключить особо емкие эффекты).
Аватара пользователя
VVM
UNец
 
Сообщения: 47
Зарегистрирован: 16 сен 2011, 11:57
Откуда: Санкт-Петербург

Re: Оптимизация игры в Unity3d

Сообщение Guyver 24 ноя 2011, 11:57

вы предлагаете форумчанам за вас сделать тестовую сцену и погонять тонны параллелепипедов с текстурами 512 ? ))

рекомендации по общей оптимизации проекта в юнити ничем не не отличается от рекомендаций по 3D CG в принципе (даже был где то тред с рассуждениями на этом форуме).

вообще 512 для мелкого варгейм юнита это дофига мне кажется ... вполне можно уложиться и в 64 (вы сам то посчитайте ... 512*512*3(4) = кол-во байт в памяти ну и например * коэффициент компрессии DXT какой нибудь * на общее кол-во текстур юнитов в игре)
атласить где можно мелкие текстуры ... (батчинг никто не отменял)
тени = или плашки под ногами ... или 1 тень от источника - солнце (PPSM) освещение от взрывов/выстрелов - вертексное
с физикой я хз ... тесты скажут сколько одновременно мелких объектов на вашей сцене смертельны для проекта.
кастом раскрашивание юнитов это шейдер наверно ... нечто вроде текстуры-маски например 4канала (RGBA) = 4 сектора раскраски ... + 4 кастом цвета .. во что красить.
дым и прочее - патиклы .. плотность - подгоняйте под свой проект опять же.

вы бы сделали примерный проект ... где загрузка бы была похожа на боевую ... и задавали уже конкретные вопросы.
Xcombat: 3D шутер на летающих тарелках!
Аватара пользователя
Guyver
UNIверсал
 
Сообщения: 392
Зарегистрирован: 21 июл 2010, 08:04
Откуда: Челябинск


Вернуться в Почемучка

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

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


cron