Неумеренное использование памяти во время визуализации.
Как все другие прораммы, V-Ray нуждается в некотором количестве памяти для визализации. В зависимости от сложности сцены и установок визуализации, он может использовать различное количество памяти. Иногда доступная системная RAM может быть меньше, чем необходимо для визуализации. В этом случае, Вы наиболее вероятно получите сообщение unhandled exception. Вы можете проверить использование памяти Windows Task Manager.
На 32-битных машинах, операционная система Windows® позволяет использовать 1.5 GB для любого единичного процесса (приложения). Это значит, что даже имея больше памяти (например 2GB), опрерационная система не позволит приложению использовать всю память.
Однако в Windows® XP Вы можете изменить это используя известный переключатель /3GB в файле boot.ini. Это разрешит ОС распределять до 3 GB RAM для любого приложения. Использование этого переключателя может позволить Вам визуализировать сцену без использования методов, описываемых ниже, для уменьшения использования памяти.
На 64-битных платформах Операционная система Windows® позволяет использовать всю доступную физическую память без ограничений.
Если Вы не можете использовать ни один из этих методов, остается только уменьшить необходимое значение изменив Вашу сцену и установки V-Ray. Элементы сцены, отнимающие наибольшее количество памяти при визуализации могут быть разделены на следующие группы:
* Геометрия - сцены с множеством объектов и/или количеством треугольников требую больше памяти для визуализации. Есть несколько путей уменьшить это значение:
- Настроить установки raycaster в свитке System (уменьшить Max. levels, увеличить размер Min. leaf size, увеличить коэффициент Face/level, переключиться из Static в Dynamic геометрию).
- Если ничего не помогло используйте объекты VRayProxy.
* Mapping UVW channels (Карты UVW каналов) - в 3ds max каждый канал карты отнимает такую же или большую часть памяти как геометрия. Неиспользуемые каналы карт могут увеличить необходимую RAM, в то время как никак не воздействуют на сцену В последних версиях 3ds max каналы текстур генерируются по умолчанию для всех объектов при их создании. V-Ray не управляет использованием RAM для текстурных координат - удостоверьтесь, что в сцене присутствуют только необходимые каналы. Использование VRayProxy также решение - т.к. координаты текстур тоже кэшируются на диске с геометрией.
* Карты смещений - объекты, смещаемые методом 2d карт смещения также требуют много памяти для визулизации, особенно с большими картами смещения. Если это случилось, используйте метод 3d карт смещения. Также, если Вы имеете несколько отдельных модификаторов смещения с той же картой смещения, лучше заменить их одним модификатором, примененным ко всем необходимым объектам. Это потому что каждый модификатор занимает память для карты смещения отдельно для каждого модификатора, даже если они используют одну карту.
* Битовые карты - есть тенденция отнимать больее число памяти, особенно если карты большие. Т.к. текстуры управляются 3ds max, V-Ray не управляет использованием ими памяти. Однако Вы можете использовать установки пейджера битовых карт 3ds max для уменьшения отнимаемой памяти. Для дополнительной информации смотрите документацию по 3ds max.
* Фильтры битовых кар - Summed area фильтры используют намного больше памяти, чем Pyramidal.
* Карты теней - тоже могут отнять память. Снова это управляется 3ds max и V-Ray не может напрямую управлять использованием ими памяти. Для уменьшения необходимой памяти Вы можете переключится на трассировщик VRayShadow.
* Буфер изображений - большое выходное разрешение требует большей памяти для запоминания финального изображения. Добавление канала G-буфера увеличивает это значение. Есть несколько путей уменьшить его:
- Использовать пейджер карт, если Вы визуализируете 3ds max-овым VFB.
- Если вы используете VRay-ский VFB, используйте опцию Render to VRay raw image и затем используйте просмотрщик VRay raw image file для конвертирования результирующего файла в необходимый формат.
- Визуализируйте изображение в несколько проходов и сшейте куски в программе наложения изображений.
* Сэмплер изображений (AA) - алгоритм выборки изображений V-Ray требует некоторое количество памяти для содержания всех данных выбираемгоо изображения. Это значение может быть большим в зависимости от захваченного размера и темпа выборки. Для его уменьшения:
- Уменьшите размер участка.
- Переключитесь на другой сэмплер изображений - например сэмплер Adaptive QMC использует меньше памяти, чем сэмплер Adaptive subdivision.
* Кэш глобального освещения - карты освещения, фотонные карты и карты света все требуют добавочной памяти для запоминания. Каждые из них имеют другие методы для управления использованием памяти:
- Для карт освещения - память зависит от числа выборок карт; Вы можете уменьшить ее использованием Min/Max rate, и более отделив значение порога (выше порога Color, выше порога Normal, ниже порога Distance).
- Для карт фотонов - память зависит от числа запоминаемых фотонов. Вы можете уменьшить это число уменьшив Diffuse subdivs для светильников или увеличив Max. density.
- Для карт света - увеличте размер выборки.
* 3ds max сцены - 3ds max сам запоминает множество информации о сцене. V-Ray не управляет этой памятью, но есть некоторые вещи, которые Вы можете сделать для уменьшения ее:
- Свернуть модификаторы для editable meshes (редактируемых сеток)
- Кэшировать анимацию с модификатором PointCache.