Большая проблема с оптимизацией

Раздел, посвящённый самому важному - скорости.

Большая проблема с оптимизацией

Сообщение Alcatraz 25 июн 2011, 21:59

Всем привет, сталкивался с проблемами с оптимизацией, кое-как выходил из положения.. сейчас, вопрос встал ребром, фпс падало сильно. я сделал всё объекты маленькими, но по отношению к друг другу нормальными и плюс Occlusion Culling ( я правильно понял, из англ.уроков, что нужно делать объекты статичными?(хотя у меня и так вроде работало) ). сегодня я был очень поражён. фпс 10-100, вот такие скачки, учитывая размер и вкл.окл.кулинг. используется 2 камеры (main camera, weapon camera) так же довольно много слоёв (штук 6-8). при вкл. окл.кулинге, и графике на максимум, фпс 10-70, при чём Draw Calls не велик, макс. 300. у меня первая миссия, сурвивал, терроры спавнются, и во время спасна, фпс 8-18, падает на секунду. на сцене стоит ограничение на спавн, более чем 10-ти врагов, 2 спавн точки, 4 друга так же есть, немного травы, и небольшой дом, вокруг для вида немного деревьев (ведь далеко нельзя выйти, сурвивал ведь и зона ограничена)
так же есть пару плейновых домов в далеке, 4 высоковольтки, взорванная машина, 10 бочек с топливом, немного травы и деревьев. скрипты все более менее оптимизированны, пробовал исправить спавнинг, делал изначально спавн кубика, скейлом как враг (вероятно то, что тормозит из-за завешанности врага скриптами и звуками, ведь у него куча звуков, локомотион систем, ИИ, ИИ аниматион, хеадлук контроллер итд, при спавне куба, фпс падает чуть чуть поменьше (при приземлении, через 2 секунды, куб трансформируется во врага, скриптом:
Синтаксис:
  1. var repl : transform; 
  2. function Start() 
  3. Invoke("Replace",Random.Range(1.2, 3.5)); 
  4. function Replace() 
  5. Destroy(gameObject); 
  6. Instantiate( repl, transform.position, transform.rotation); 

вероятно из-за этого куба, вылезает ошибка у локомотион. помогите пожалуйста с оптимизацией! заранее спасибо! :)
Unity3D Game Developer
Аватара пользователя
Alcatraz
UNITрон
 
Сообщения: 236
Зарегистрирован: 07 июн 2011, 09:12
Откуда: Москва
  • Сайт
  • ICQ

Re: Большая проблема с оптимизацией

Сообщение Lestar 25 июн 2011, 23:31

Посмотреть в профайлере что дает такую нагрузку.
Lestar
UNIт
 
Сообщения: 114
Зарегистрирован: 05 июн 2011, 02:36

Re: Большая проблема с оптимизацией

Сообщение gnoblin 26 июн 2011, 01:36

Occlusion culling будет работать если предварительно были произведены манипуляции с Umbra.
Речь наверное про static batching :).
skypeid: madkust
Мои крайние проекты:
Убойный Хоккей
Cube Day Z (альфа)
Аватара пользователя
gnoblin
Адепт
 
Сообщения: 4633
Зарегистрирован: 08 окт 2008, 17:23
Откуда: Минск, Беларусь
Skype: madkust
  • Сайт

Re: Большая проблема с оптимизацией

Сообщение Alcatraz 26 июн 2011, 06:27

Lester, ok, посмотрю.. (я пару раз смотрел профилер но не понял где какой компонент вляющий на фпс).

gnoblin, эмм... не понял.... что за Umbra? :-?
И что за static batching, я слышал что то прл batching... я просто галочку в объекте стпавил "static", у некоторых не ставил, делал монипуляции с Occlusion Area, запускал игру, за камерой не рендерилось..

а есть ещё какие то универсальные способы оптимизации?
Unity3D Game Developer
Аватара пользователя
Alcatraz
UNITрон
 
Сообщения: 236
Зарегистрирован: 07 июн 2011, 09:12
Откуда: Москва
  • Сайт
  • ICQ

Re: Большая проблема с оптимизацией

Сообщение Alcatraz 26 июн 2011, 10:28

подоптимизировал сцену, посмотрел профилер, настроил оклижин, юез друзей и врагов, фпс до 270, всё ок, с 4-мя друзьями, до 95 фпс, в основном 60-70.
при спавне врагов с 2-мя спавн поинтами, 10-90, так же..получается дело в этом..есть пару идёй, буду ботов-врагов оптимизировать..а вот со спавн поинтами беда, помогите плз, что бы не тормозило при спавне.. :-
Unity3D Game Developer
Аватара пользователя
Alcatraz
UNITрон
 
Сообщения: 236
Зарегистрирован: 07 июн 2011, 09:12
Откуда: Москва
  • Сайт
  • ICQ

Re: Большая проблема с оптимизацией

Сообщение Lestar 26 июн 2011, 13:08

Для того чтобы чем то помочь,нужно для начала посмотреть каким образом вы их спавните.Чтобы это не выглядело "поворачиваю ключ,а она не фурычит.".В наше время экстрасенсы на вес золота.
Lestar
UNIт
 
Сообщения: 114
Зарегистрирован: 05 июн 2011, 02:36

Re: Большая проблема с оптимизацией

Сообщение 666marat666 26 июн 2011, 13:09

незнаю может я вам сейчас и гадость посоветую но мне помогает проблем пока с этим не было:
вместо :
Синтаксис:
Используется javascript
function Update()
{
// bla bla bla
}


делаю так:
Синтаксис:
Используется javascript
while(true)
{
//bla bla bla
yield WaitForSeconds(0.01);
}


но это в жава скрипте с C# там немного проблемы с этим (или только у меня) , и ещё посмотрите чтобы вы гдето случаем каждый update не создавали обьекты , это очень грузная операция
Изображение

->Невозможно решить проблему на том же уровне, на котором она возникла. Нужно стать выше этой проблемы, поднявшись на следующий уровень.<-
Альберт Эйнштейн
Аватара пользователя
666marat666
UNIт
 
Сообщения: 139
Зарегистрирован: 04 авг 2010, 22:40
Откуда: Украина

Re: Большая проблема с оптимизацией

Сообщение Alcatraz 26 июн 2011, 15:28

по сути одно и тоже, но апдейт проверяет каждый кадр, а это будет каждые 0.01 секунды, независимо от фпс..то есть будет когда как..всё время по разному.. :-?
Unity3D Game Developer
Аватара пользователя
Alcatraz
UNITрон
 
Сообщения: 236
Зарегистрирован: 07 июн 2011, 09:12
Откуда: Москва
  • Сайт
  • ICQ

Re: Большая проблема с оптимизацией

Сообщение 666marat666 26 июн 2011, 16:16

тогда можно добавить :

Синтаксис:
Используется javascript
while(true)
{

yield WaitForSeconds(0.01 * Time.deltaTime)
}
 


или чтото в этом духе :)
Изображение

->Невозможно решить проблему на том же уровне, на котором она возникла. Нужно стать выше этой проблемы, поднявшись на следующий уровень.<-
Альберт Эйнштейн
Аватара пользователя
666marat666
UNIт
 
Сообщения: 139
Зарегистрирован: 04 авг 2010, 22:40
Откуда: Украина

Re: Большая проблема с оптимизацией

Сообщение Alcatraz 26 июн 2011, 16:40

можно попробовать, но фпс я поднял уже, вроде норм, осталось оптимизировать спавн..на 1 сек, фпс до 5-15 падает..вот это бесит.. :-?
Unity3D Game Developer
Аватара пользователя
Alcatraz
UNITрон
 
Сообщения: 236
Зарегистрирован: 07 июн 2011, 09:12
Откуда: Москва
  • Сайт
  • ICQ

Re: Большая проблема с оптимизацией

Сообщение Zaicheg 26 июн 2011, 17:00

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

Re: Большая проблема с оптимизацией

Сообщение Alcatraz 26 июн 2011, 19:09

нет, предупреждения и сообщения, у врага появляются, и при спавне тормоза, с кубом, всё было идеально..
Unity3D Game Developer
Аватара пользователя
Alcatraz
UNITрон
 
Сообщения: 236
Зарегистрирован: 07 июн 2011, 09:12
Откуда: Москва
  • Сайт
  • ICQ

Re: Большая проблема с оптимизацией

Сообщение Lestar 26 июн 2011, 20:04

Это торба.Ну насколько нужно не уважать участников форума,чтобы спрашивать каких то советов по оптимизации и не показывать реализованный листинг,спрашивать как исправить ошибку и не показывать логи.Вот вы мне ответьте на вопрос.Почему когда я вставляю ключ,никакой реакции? Решите мою проблему,я решу вашу.
Lestar
UNIт
 
Сообщения: 114
Зарегистрирован: 05 июн 2011, 02:36

Re: Большая проблема с оптимизацией

Сообщение Neodrop 26 июн 2011, 20:16

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

Re: Большая проблема с оптимизацией

Сообщение Alcatraz 26 июн 2011, 20:42

мда.. я уважительно ко всем отношусь, ошибок нет, было пару предупреждений, которые исправил, я покопался в кодах, теперь нету ни Дебаг логов, ни предупреждений, ни ошибок! просто временно падает фпс (на секунду) при спавне бота, и откуда я вам возбму лог ошибки, демонстрирующий это!? ~o)
Unity3D Game Developer
Аватара пользователя
Alcatraz
UNITрон
 
Сообщения: 236
Зарегистрирован: 07 июн 2011, 09:12
Откуда: Москва
  • Сайт
  • ICQ

След.

Вернуться в Оптимизация

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

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