2010-05-13 4 views
0

Я создал сценарий в 3ds max, чтобы отобразить кучу анимаций в фреймах. Для этого я открываю файл со всеми материалами, загружаю анимацию (как бип) на фигуру, а затем визуализую.Известные утечки памяти в 3ds max?

Мы столкнулись с проблемой, из-за которой скрипт завершился неудачно, поскольку он не смог открыть следующий файл - max потреблял всю системную память. Закрытие max, конечно же, освободило память, и мы смогли продолжить сценарий.

Я проверил переменную heapfree, надеясь увидеть утечку памяти в моем сценарии, надеясь увидеть утечку памяти в моем собственном (maxscript) коде, но количество свободного места было одинаковым после каждой анимации.

Тогда это должно быть 3ds max, который потребляет всю эту память. Ничего в максимуме не нужно сохранять из анимации в анимацию - есть ли способ получить максимальную свободу для этой памяти? (Я пробовал resetMaxFile() и вручную удалял все объекты в сцене). Существуют ли какие-либо известные наборы операций, которые вызывают максимальный рост из-под контроля?

ответ

1

Вы пытались добавить это в конце своего цикла: дс()

это делает garbarge сбор и освобождает некоторое пространство. Однако я подозреваю, что часть бипа протекает.

-1

Первая строка опроса должна быть, есть ли у вас локально созданные плагины? Могут ли они утечки памяти?

Я не работал с 3dsmax с версии 5, но я не помню никаких конкретных утечек памяти, которые были проблематичными. Тем не менее, я, кажется, вспоминаю (из опыта других), что периодические операции, необходимые для перезапуска MAX время от времени, просто для того, чтобы сохранить смысл. Например. разбейте свое пакетное задание на более мелкие наборы работы и вызовите их последовательно. Однако материал, который мы делали в MAX5, не нуждался в таких клодах. Разумеется, YMMV. ;)

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