Последние новости
Автоматизация рендера с V-Ray App SDK: 6 шагов от сцены до результатаПеремещение объектов вдоль кривой с помощью Clamp To Constraint в BlenderLenovo представила серверы ThinkSystem с процессорами AMD EPYC 9006 6-го поколенияКинематографичный рендер в Unreal Engine Sequencer и Movie Render QueueКак использовать displacement в Blender: детализация и памятьРуководство по SketchUp AI Render: создаём изображения из вида моделиUnreal Engine Multi-User Editing: руководство по совместной работе командыgputaskman показывает в терминале процессы, использующие память GPUРуководство по поиску дефектной геометрии и повышению надежности модели в Rhino 8Вышел Blender 5.3: поддержка Gaussian Splatting и новые возможности рендеринга
СоветыV-RayV-Ray App SDKOMA

Автоматизация рендера с V-Ray App SDK: 6 шагов от сцены до результата

В документации Chaos по V-Ray App SDK объясняется, как управлять рендером на движке V-Ray из приложения или отдельного процесса. В этом руководстве разобран основной процесс: от загрузки сцены до сохранения изображения.

Рабочее пространство, напоминающее о визуализации архитектурного интерьера и процессе рендераИИ-изображение
Иллюстрация создана с помощью ИИ.Изображение: 3dsınıfı / FCA AI

Коротко

  1. V-Ray App SDK позволяет создавать сцену V-Ray или запускать рендер, загрузив файл .vrscene.
  2. Interactive подходит для быстрой предварительной визуализации и проверки настроек сцены, а Production — для получения итогового изображения.
  3. Рендер можно запустить в фоновом режиме с помощью start(); во время работы доступны промежуточные изображения.
  4. В документации не указаны конкретная версия ПО или стоимость лицензии для App SDK.

V-Ray App SDK предоставляет API для запуска и управления рендером с помощью движка V-Ray из приложения или отдельного процесса. Согласно официальной документации Chaos, сцену можно создать в памяти с помощью плагинов V-Ray или загрузить из файла .vrscene. В этом руководстве описан основной цикл рендера в App SDK и объясняется, какой режим подходит для разных этапов работы со сценой. Поскольку в документации не указана актуальная версия App SDK, материал основан на общем рабочем процессе, представленном в документации.

1. Подготовьте среду

  1. Укажите расположение файлов App SDK. Для работы SDK, согласно документации, необходимо задать переменную среды VRAY_SDK. Если используется привязка Python, папку python нужно добавить в пути поиска модулей Python; в документации этот вариант показан с помощью PYTHONPATH. Это необходимо, чтобы приложение могло найти компоненты SDK.

  2. Запустите подготовительный скрипт или рассмотрите альтернативный способ. В документации показано использование setenv.bat для Windows и source setenv.sh для Linux и macOS. Эти скрипты задают соответствующие переменные среды. Если бинарные файлы SDK находятся не в структуре папок /bin продукта, можно использовать переменную VRAY_APPSDK_BIN. Если переменные среды задать нельзя, путь поиска можно указать и через API.

На этом этапе следует проверить, соответствует ли структура папок на компьютере расположению, в котором приложение ищет библиотеку SDK. В документации не перечислены требования к установке для конкретной операционной системы или оборудования, поэтому при настройке следует ориентироваться на API-документацию используемой привязки.

2. Создайте или загрузите сцену

  1. Запустите контроллер рендера. Класс VRayRenderer в App SDK запускает процесс рендера и управляет им. Сцену можно собрать в памяти, создавая объекты плагинов V-Ray и задавая их параметры; другой вариант — загрузить файл .vrscene, формат сцены V-Ray. Документация также допускает сочетание этих способов.

Способ создания сцены зависит от существующего производственного процесса. Например, приложение может преобразовать собственные данные сцены в плагины V-Ray или открыть заранее экспортированный файл .vrscene. App SDK не требует использовать конкретное ПО для моделирования, а предназначен для интеграции с движком рендера V-Ray.

  1. Когда сцена готова, выберите режим рендера. В документации описаны два основных варианта:

Режим рендераУказанное в документации применениеЭтап рабочего процесса
InteractiveБыстрый предварительный просмотр изображения и постепенное улучшение его качестваПолучение обратной связи при проверке содержимого или настроек сцены
ProductionПолучение итогового изображения из тщательно настроенной сцены; завершение рендера может занять времяСоздание финального изображения

Оба режима поддерживают CPU и GPU. В документации указано, что CUDA и OptiX доступны только для NVIDIA, а Metal и MetalRT — только для Apple. Тип рендера выбирается свойством renderMode объекта VRayRenderer. Для класса по умолчанию, согласно документации, установлен режим Interactive (CPU), поэтому нужный режим следует выбирать явно с учетом задачи приложения и доступных в системе возможностей.

3. Запустите рендер и получите результат

  1. Запустите рендер. Метод start() запускает процесс рендера в отдельном потоке и сразу возвращает управление, не дожидаясь завершения. Благодаря этому приложение может выполнять другие задачи во время рендера или оставаться готовым к получению изображения прогресса. Пример на Python из документации загружает сцену, запускает рендер, ожидает его завершения и сохраняет полученное изображение в формате PNG:

python
import vray

with vray.VRayRenderer() as renderer:
    renderer.load('./intro.vrscene')
    renderer.start()
    renderer.waitForRenderEnd(6000)
    image = renderer.getImage()
    image.save('intro.png')

Значение 6000 в примере кода — аргумент, переданный вызову waitForRenderEnd в документации; оно не указано как рекомендуемое или обязательное время для каждой сцены. Поведение ожидания в производственном коде следует определять по документации используемой привязки API.

  1. Оценивайте изображение и во время рендера, а по завершении освободите ресурсы. Согласно документации, текущие данные изображения можно получить до завершения рендера. Это может быть полезно, в частности, для отображения предварительного просмотра в интерфейсе приложения в режиме Interactive или для наблюдения за ходом процесса. В документации указано, что итоговое изображение готово, когда renderer переходит в состояние IDLE_DONE. После завершения работы renderer следует закрыть; в примере на Python жизненным циклом управляет блок with.

Кроме того, в документации описана возможность подписываться на события при изменении состояния рендера, создании сообщения V-Ray или передаче сведений о задаче и ходе выполнения. Эти уведомления помогают интеграции управлять поведением приложения на этапах загрузки, рендера и завершения. Однако функции обратного вызова выполняются в отдельном потоке; медленный пользовательский код может задержать выполнение других обратных вызовов.

Что меняется в архитектурном и archviz-процессе?

App SDK будет полезен командам, которые хотят встроить повторяющиеся этапы рендера в приложение или управлять сценой V-Ray из другого процесса. Архитектурные бюро и специалисты по archviz могут использовать Interactive для проверки сцены и ее содержимого, а Production — для получения итогового изображения. Благодаря этому можно переключаться между предварительным просмотром и финальным результатом в рамках одного renderer.

При этом в источниках нет таблицы совместимости с конкретными 3D-программами, требований к оборудованию, условий лицензирования или сведений о ценах. При выборе CPU или GPU можно учитывать только упомянутые в документации варианты рендеринга и ограничения платформ для соответствующих GPU-технологий; делать выводы о производительности нельзя. До интеграции приложения следует проверить API-документацию используемой языковой привязки и структуру папок, в которых будут размещены библиотеки SDK.

Частые ошибки

  • Запускать привязку SDK, не задав VRAY_SDK или подходящий альтернативный путь, — библиотеки могут не обнаружиться.

  • Неверно считать, что вызов start() означает завершение рендера: в документации этот метод описан как асинхронный вызов, который сразу возвращает управление.

  • Попытка изменить сцену или renderer во время рендера в состоянии PREPARING может быть отклонена. В документации это предупреждение относится к случаю, когда используется start(), а не startSync().

  • Медленные обратные вызовы, подписанные на события V-Ray, могут задерживать выполнение других обратных вызовов, поэтому следует проверять, какие операции выполняют обработчики событий.

  • Использовать аргумент ожидания из примера кода как неизменную настройку для любого проекта — значит выходить за рамки сведений, приведенных в документации.

В этой документации описаны основы загрузки сцен и управления рендером через App SDK, а не выбор конкретных параметров рендера в пользовательском интерфейсе. За подробностями о настройках внутри приложения следует обращаться к справочнику API используемой привязки.

Источники

Источников: 2
D
docs.chaos.comdocs.chaos.com/vray_app_sdk
Пересказ
D
docs.chaos.comdocs.chaos.com/vray_app_sdk/doc/nodejs_plugins/index.html
Пересказ

Тексты источников не перепечатываются; короткие цитаты отмечены, остальное — наш пересказ и комментарий.

Мнение 3dsınıfı
3dОценка редактора

Для архитектурных бюро и студий визуализации в Турции практическая ценность App SDK заключается в том, что он позволяет встроить рендер V-Ray в существующее приложение или автоматизированный процесс. Возможность переключаться между режимами Interactive и Production в одном renderer позволяет работать с предварительным просмотром и финальным изображением, не разделяя эти этапы между разными инструментами.

При этом в документации нет сведений о ценах, условиях лицензирования, требованиях к оборудованию или совместимости с конкретными программами. Поэтому перед принятием решения о покупке стоит уточнить порядок установки SDK и возможности API используемой привязки. Самые распространенные операционные риски, судя по описанию, связаны с неверной настройкой переменных среды и предположением, что асинхронный рендер уже завершен.

Частые вопросы

Для чего нужен V-Ray App SDK?

Он позволяет запускать и управлять рендером с помощью движка V-Ray из приложения или отдельного процесса. Сцену можно создать в памяти с помощью плагинов или загрузить из файла `.vrscene`.

Чем режимы Interactive и Production в V-Ray App SDK отличаются друг от друга?

В документации режим Interactive описан как средство для быстрого предварительного просмотра и проверки настроек, а Production — как способ получить итоговое изображение из тщательно настроенной сцены.

Какие варианты GPU-рендера поддерживает V-Ray App SDK?

В документации указано, что CUDA и OptiX предназначены для NVIDIA, а Metal и MetalRT — для GPU Apple. Режим рендера можно выбрать для CPU или GPU.

Комментарии и форум — на турецком языке.Присоединиться к обсуждению
+

Похожие новости