Ninja Ripper
-
- Прохожий
- Сообщения: 15
- Зарегистрирован: 29 мар 2017, 14:30
- Благодарил (а): 0
- Поблагодарили: 0
Re: Ninja Ripper
я добавил очистку памяти в функцию загрузки .RIP файла, теперь стабильно 1ГБ использует, но скорость загрузки уменьшилась до 10 файлов в секунду
Зачем сразу макс обвинять в том что сами мусор не умеете чистить?
ну хоть 10 файлов в секунду и то норм)
edit:
Остановил на загрузке 2000 файлов, используется всего 1.2ГБ памяти, без очистки памяти 2,3ГБ
я просто из какого-то примера добавил очистку памяти, там 3 функции вызываются:
gc() Garbage Collection.
freescenebitmaps() Cleans up in texture memory.
clearUndoBuffer() Removes your Undo's
Но оказалось что меши загрузились без текстур , в смысле в 3ds max не видны текстуры почему-то.
Я убрал freescenebitmaps(), и скрипт снова начал жрать память как бешеный, 2.1ГБ за 2000 файлов, но скорость загрузки не увеличилась.
ой, привык что такие форумы сами сообщения объединяют
Зачем сразу макс обвинять в том что сами мусор не умеете чистить?
ну хоть 10 файлов в секунду и то норм)
edit:
Остановил на загрузке 2000 файлов, используется всего 1.2ГБ памяти, без очистки памяти 2,3ГБ
я просто из какого-то примера добавил очистку памяти, там 3 функции вызываются:
gc() Garbage Collection.
freescenebitmaps() Cleans up in texture memory.
clearUndoBuffer() Removes your Undo's
Но оказалось что меши загрузились без текстур , в смысле в 3ds max не видны текстуры почему-то.
Я убрал freescenebitmaps(), и скрипт снова начал жрать память как бешеный, 2.1ГБ за 2000 файлов, но скорость загрузки не увеличилась.
ой, привык что такие форумы сами сообщения объединяют
- Tosyk
- Администратор
- Сообщения: 1880
- Зарегистрирован: 24 авг 2011, 03:11
- Благодарил (а): 64 раза
- Поблагодарили: 61 раз
Re: Ninja Ripper
расскажи людям, куда ты добавлял функцию, может кому-то тоже будет полезно.karaulov писал(а):Остановил на загрузке 2000 файлов, используется всего 1.2ГБ памяти, без очистки памяти 2,3ГБ
я просто из какого-то примера добавил очистку памяти, там 3 функции вызываются:
gc() Garbage Collection.
freescenebitmaps() Cleans up in texture memory.
clearUndoBuffer() Removes your Undo's
ещё раз повторюсь: макс не поддерживает такого количества затекстуренных объектов. точнее он то поддержит всё что хочешь, но на суперкомпьютере. всё равно что на жигулях везти 10000 мешков с картошкой.karaulov писал(а):Но оказалось что меши загрузились без текстур , в смысле в 3ds max не видны текстуры почему-то.
При копировании материалов сайта ссылка на этот ресурс обязательна.
When copying materials from this site link to this resource is required.
When copying materials from this site link to this resource is required.
-
- Прохожий
- Сообщения: 15
- Зарегистрирован: 29 мар 2017, 14:30
- Благодарил (а): 0
- Поблагодарили: 0
Re: Ninja Ripper
Конечно будет жрать память, он загружает 100500 копий одной и той же текстуры!
И таких тысячи
это особенность скрипта, а не гарбедж коллектора макса )))
И таких тысячи
А потом сваливают проблемы скрипта на макс...Tosyk писал(а):это особенность гарбэдж коллектора макса
это особенность скрипта, а не гарбедж коллектора макса )))
- Tosyk
- Администратор
- Сообщения: 1880
- Зарегистрирован: 24 авг 2011, 03:11
- Благодарил (а): 64 раза
- Поблагодарили: 61 раз
Re: Ninja Ripper
скрипт не идеален, если есть желание его улучшить то как говорится "feel free to share any thoughts" или по русски: поделись идеями с остальными.karaulov писал(а):Конечно будет жрать память, он загружает 100500 копий одной и той же текстуры!
И таких тысячи
При копировании материалов сайта ссылка на этот ресурс обязательна.
When copying materials from this site link to this resource is required.
When copying materials from this site link to this resource is required.
-
- Прохожий
- Сообщения: 15
- Зарегистрирован: 29 мар 2017, 14:30
- Благодарил (а): 0
- Поблагодарили: 0
Re: Ninja Ripper
Ну так надо было сразу писать что проблема в скрипте, а то "виноват макс"...
Потом такие знатоки начинают писать скрипты, которые сжирают у всех память, и обвиняют в этом 3ds max ...))
Потом такие знатоки начинают писать скрипты, которые сжирают у всех память, и обвиняют в этом 3ds max ...))
Последний раз редактировалось karaulov 30 мар 2017, 09:36, всего редактировалось 1 раз.
-
- Ветеран
- Сообщения: 424
- Зарегистрирован: 08 дек 2011, 04:17
- Благодарил (а): 0
- Поблагодарили: 0
Re: Ninja Ripper
karaulov
Приятно видеть, того, кто разбирается.
Скрипт импорта писался для первой версии и с тех пор я не прикасался к нему, т.к. формат рип файлов не менялся.
Про дублирование текстур и очистку за собой верно подмечено. Макс неуиноват)
И по 10000 файлов никто не грузил еще до этого времени. Обычно грузят разные части модели с разными текстурами. Проблемы в основном с подбором UV
Напишите свой идеальный импортер, мы заценим.
Приятно видеть, того, кто разбирается.
Скрипт импорта писался для первой версии и с тех пор я не прикасался к нему, т.к. формат рип файлов не менялся.
Про дублирование текстур и очистку за собой верно подмечено. Макс неуиноват)
И по 10000 файлов никто не грузил еще до этого времени. Обычно грузят разные части модели с разными текстурами. Проблемы в основном с подбором UV
Напишите свой идеальный импортер, мы заценим.
-
- Прохожий
- Сообщения: 15
- Зарегистрирован: 29 мар 2017, 14:30
- Благодарил (а): 0
- Поблагодарили: 0
Re: Ninja Ripper
так я исправлю ошибки я просто вообще еще ни одного скрипта не писал для макса)
но fclose забыть ...
а что тут такое:
в 10 раз больше устанавливается если меньше 200000?
но fclose забыть ...
а что тут такое:
Код: Выделить всё
if (heapSize < 200000) then
heapSize = 2000000
- Tosyk
- Администратор
- Сообщения: 1880
- Зарегистрирован: 24 авг 2011, 03:11
- Благодарил (а): 64 раза
- Поблагодарили: 61 раз
Re: Ninja Ripper
даkaraulov писал(а):а что тут такое:в 10 раз больше устанавливается если меньше 200000?Код: Выделить всё
if (heapSize < 200000) then heapSize = 2000000
При копировании материалов сайта ссылка на этот ресурс обязательна.
When copying materials from this site link to this resource is required.
When copying materials from this site link to this resource is required.
-
- Прохожий
- Сообщения: 15
- Зарегистрирован: 29 мар 2017, 14:30
- Благодарил (а): 0
- Поблагодарили: 0
Re: Ninja Ripper
Ну не знаю, что-то вроде этого:
Добавил fclose и поиск материалов по имени
https://pastebin.com/SX6hAhrR
Теперь память не жрет (из-за постоянного создания дубликатов текстур) но пока не знаю работает или нет поиск материала по имени (функцию сам написал т.к в гугле не получилось найти, ужасный maxscript синтаксис вообще не понятно, но вроде бы работает)
Но это поможет только при загрузке тысяч файлов с одинаковыми текстурами )))
Скорость загрузки ниже стала, нужно наверно скрипт переписать что бы он сначала текстуры загрузил из rip файлов а потом уже меши, и готовые материалы прикреплял к ним?
А что там еще в начале скрипта за ограничение на 1 ядро ? или что это значит?
//Добавлено через некоторое время
Проверил 3d Ripper , мало того что нет плагина под 2017 макс (максимум под 2011) , так и еще жрет больше памяти чем ninja ripper.
Всмысле создался obj файл 20мб, а в 3дмаксе сожрало 6ГБ памяти и зависло на импорте) пришлось комп перезагружать т.к всю память сожрало не смог даже закрыть макс)))
Добавил fclose и поиск материалов по имени
https://pastebin.com/SX6hAhrR
Теперь память не жрет (из-за постоянного создания дубликатов текстур) но пока не знаю работает или нет поиск материала по имени (функцию сам написал т.к в гугле не получилось найти, ужасный maxscript синтаксис вообще не понятно, но вроде бы работает)
Но это поможет только при загрузке тысяч файлов с одинаковыми текстурами )))
Скорость загрузки ниже стала, нужно наверно скрипт переписать что бы он сначала текстуры загрузил из rip файлов а потом уже меши, и готовые материалы прикреплял к ним?
А что там еще в начале скрипта за ограничение на 1 ядро ? или что это значит?
//Добавлено через некоторое время
Проверил 3d Ripper , мало того что нет плагина под 2017 макс (максимум под 2011) , так и еще жрет больше памяти чем ninja ripper.
Всмысле создался obj файл 20мб, а в 3дмаксе сожрало 6ГБ памяти и зависло на импорте) пришлось комп перезагружать т.к всю память сожрало не смог даже закрыть макс)))
-
- Прохожий
- Сообщения: 1
- Зарегистрирован: 06 дек 2016, 18:15
- Благодарил (а): 0
- Поблагодарили: 0
Re: Ninja Ripper
хотел перевести денег авторам проекта, но пейпал не дает - говорит что можно только в рублях, причем нет возможности изменить валюту
предлагаю вам добавить еще какой-нибудь способ приема платежей
предлагаю вам добавить еще какой-нибудь способ приема платежей