Проблемы с памятью размера модели Three.JS Collada

Мне любопытно, каков ожидаемый размер памяти для простой сцены с моделью размером 3 МБ, загруженной с помощью ColladaLoader.js. (Модель изначально была файлом SketchUp, преобразованным в .dae)

В настоящее время, когда я загружаю файл модели .dae размером 3 МБ в сцену и профиль, делая снимок кучи, моя сцена имеет размер 118 МБ! (Модель — единственное, что есть в сцене.)

Я считаю, что виновата утечка памяти. Но я также не могу найти никакой информации о том, какой размер я должен ожидать. Я читал, что файлы Collada дорогие, с точки зрения пропускной способности, но может ли кто-нибудь дать мне реалистичный пример того, какое использование памяти ожидать?

(Я использую three.js r69)


person Laura    schedule 09.12.2014    source источник


Ответы (1)


Это потому, что ColladaLoader преобразует геометрию в массив, 3 МБ информации — это огромный массив. У меня есть 6 моделей по 100 КБ в моей сцене, но снимок головы дает размер 31 МБ.

person mcode    schedule 09.12.2014
comment
Спасибо, это дает мне некоторую перспективу. Есть ли хороший способ уменьшить размер файлов Collada? - person Laura; 09.12.2014
comment
Размер каждого объекта увеличивается на количество вершин/граней. Если у вас большое количество ребер и кривых, Three.js создаст такое количество вершин на ребро, много вершин для каждой отдельной кривой. И соединить все с множеством лиц. Итого: Много всего. Попробуйте создать свои модели без идеальных кривых, не так много краев и так далее. - person mcode; 11.12.2014