1. Пользоваться форумом на планшетах и телефонах стало удобнее благодаря Tapatalk

тормозит и виснет при удалении объектов

Тема в разделе "Общие вопросы", создана пользователем supkrovi, 24 ноя 2010.

Модераторы: Артер
  1. supkrovi

    supkrovi Знаток

    С нами с:
    28.02.2006
    Сообщения:
    208
    Симпатии:
    1
    Баллы:
    23
    Заметил в рабочей сцене такой мерзкий эффект - пытаюсь удалить много объектов разом - бешено тормозит либо виснет (может и не виснет, а тормозит настолько, что ждать нет мОчи - не проверял).
    Поставил эксперимент: в новой сцене создал ряд из 200 чайников, скопировал его 200 раз. После двухсекундной задержки появились 40000 чайников. Всё в порядке. Выделяю примерно треть из них, жму дилит, и всё - висит.
     
  2. BeLiar

    BeLiar Активный участник

    С нами с:
    08.10.2007
    Сообщения:
    206
    Симпатии:
    21
    Баллы:
    17
    Ну да, макс плохо дружит с большим количеством объектов... тут и сказать больше нечего, это не лечится. Вот если бы это 200 чайников саттачить в один объект и его скопировать 200 раз, все было бы в порядке.
     
  3. GoodMan

    GoodMan Мастер

    С нами с:
    20.04.2005
    Сообщения:
    2.792
    Симпатии:
    9
    Баллы:
    254
    Каждый объект (не обязательно геометрический) в МАХ-е имеет сотни различных параметров. При создании копий параметры описывающие объект дублируются и становятся уникальными, со всеми вытекающими..

    Пример:
    - 10 шириков в сцене будут иметь по 100 параметров каждый = 1000 уникальных параметров в сцене.
    Но 1-н Editable Poly систоящий из 1000 шариков сколлапсенных вместе тоже будет иметь 100 параметров, соответственно будет "весить" намного меньше..

    П.С. При каждом обновлении вьюпортов (т.е. от 10 до 50раз в секунду) - параметры всех видимых объектов влияющих на их отображение в сцене пересчитываются..
     
  4. supkrovi

    supkrovi Знаток

    С нами с:
    28.02.2006
    Сообщения:
    208
    Симпатии:
    1
    Баллы:
    23
    Забавно, идея с аттачем пришла в голову за полчаса до ответа BeLiar. Увы, процесс происходит аналогично удалению((
    Всё понятно про параметры и тд. Непонятно разное поведение программы при разных операциях. Почему создание не занимает нисколько времени, а удаление (аналогичная со знаком минус задача) - ужасно долго с намёком на зависание?
    Мне раньше часто доводилось работать с очень большими сценами, но с подобной проблемой не сталкивался.
    может чтото в настройках системы/макса? Или железо (память, например)?
    макс 2001 сп1
    вин 7
    core i7 940
    6Gb PC-10600
     
  5. GoodMan

    GoodMan Мастер

    С нами с:
    20.04.2005
    Сообщения:
    2.792
    Симпатии:
    9
    Баллы:
    254
    Может быть глюк в конкретном объекте сцены?
    Бывает из-за "неправильных" объектов или всяких кэшей реактора сцена раздувается или глючит непомерно..
     
  6. supkrovi

    supkrovi Знаток

    С нами с:
    28.02.2006
    Сообщения:
    208
    Симпатии:
    1
    Баллы:
    23
    тест с новой сценой и чайниками опровергает эту гипотезу. Кстати, я заметил, что во время попытки удаления/аттача, уровень памяти не менятся в диспетчере задач.
     
  7. supkrovi

    supkrovi Знаток

    С нами с:
    28.02.2006
    Сообщения:
    208
    Симпатии:
    1
    Баллы:
    23
    А не мог бы ктонибудь сделать тоже самое - поставить 40000 чайников и удалить их? Был бы очень признателен. Это бы решило - должно быть так или у меня с компом или максом чтото.
     
  8. BeLiar

    BeLiar Активный участник

    С нами с:
    08.10.2007
    Сообщения:
    206
    Симпатии:
    21
    Баллы:
    17
    Да какая сцена, тут дело ТОЛЬКО в количестве объектов.

    200 чайников аттачаться долго? ну да, та же фигня с количеством объектов, саттачить сначала 20, потом 10 копий этих 20-ти будет быстрее... зато потом наклонил ты их еще 200, и удалились все эти 40.000 чайников, объединенные в 200 объектов, в миг.

    Да, и я даже всё это у себя попробовал.

    Тут дело не в больших сценах: гениальные моделлеры делали одну обычную многоэтажку так, что она тормозила во вьюпорте, не говоря уже о рендере, т.к. состояла из 18.000 объектов, среди них 2.000 - хелперы групп... саттачил всё до 100 объектов и стало зашибись.
     
  9. supkrovi

    supkrovi Знаток

    С нами с:
    28.02.2006
    Сообщения:
    208
    Симпатии:
    1
    Баллы:
    23
    Проблема в том, что в некоторых случаях объекты должны быть инстансами для быстрого изменения параметров в процессе работы. Кстати, изменине этих параметров происходит действительно быстро, в отличие, опять же, от удаления. Я не могу понять, почему процесс именно удаления невыносимо сложнее нежели изменение параметров тысяч объектов (изменение кол-ва полигонов, деформации, мэппинг итд) и создания объектов.
    Я не программист, нюнасов не знаю, но обычная человеческая логика говорит мне, что это абсурд. Безусловно, понимание процесса не повлияет на ситуацию, но успокоить мозг, надеюсь, способно.
    Открыл для себя америку - макс в процессе работы использует только одно ядро (хотя в диспетчере задач ему приказано использовать все). Причём, 2011й использует первое ядро, а 2009й - восьмое.
     
Модераторы: Артер

Поделиться этой страницей