3D рендеринг движка для автономного пакетного рендеринга многих моделей + текстурных карт? - PullRequest
2 голосов
/ 27 февраля 2012

Я разрабатываю проект, который будет использовать множество файлов PNG, которые должны быть отрисованы из 3D-моделей одежды (нам еще не нужно было нанять кого-то для создания моделей). У нас есть различные карты текстур (разные типы и цвета ткани и т. Д.), Которые будут использоваться с моделями (каждая модель может быть визуализирована много раз с разными текстурами). В будущем мы добавим и изменим как модели, так и карты текстур, и должны иметь возможность автоматически повторно отображать PNG по требованию.

Итак, мы ищем:

  1. Автономный движок 3D-рендеринга, который можно запустить из командной строки. Он должен принимать формат ввода, который мы можем легко создать с помощью специального скрипта.

  2. Библиотека 3D-рендеринга, которая может взаимодействовать с популярным языком программирования, таким как Java или Ruby, и которая может загружать 3D-модели в популярных форматах файлов моделирования.

Мы смотрим на Yafaray (http://www.yafaray.org),, который можно запустить из командной строки и который принимает описание сцены XML в качестве входных данных, но я уверен, что могут быть лучшие варианты. Можете ли вы дать объективную разбивку плюсы / минусы вариантов, которые вам известны?

1 Ответ

4 голосов
/ 27 февраля 2012

Движок трехмерного рендеринга в автономном режиме

Makehuman использует несколько внешних средств визуализации .Возможно, вы захотите проверить их.

Можете ли вы дать объективную оценку плюсов / минусов вариантов, которые вам известны?

Нет.Неясно, какой проект вы разрабатываете.

На данный момент я подозреваю, что вы пытаетесь создать собственную ферму рендеринга с нуля, и если я прав в этом, правильным решением будет использование существующего программного обеспечения - maya / 3dsmax имеет некоторую поддержку фермы рендеринга,и должно быть возможно создать ферму рендеринга на основе блендера.Из этих пакетов Maya определенно имела поддержку сценариев (я думаю, MEL / python), и хорошая часть blender написана на python.

Если вам нужен рендерер в стиле GL, то Mesa3D обеспечиваетбиблиотека, которая «в основном» совместима с OpenGL, но работает на процессоре без графического ускорения.Это означает, что вы сможете использовать его для закадрового рендеринга без создания окна.Поскольку он рендерит все на CPU, он будет намного медленнее, чем ускоренный рендеринг на GPU.

Существует также Pixomatic программное средство рендеринга, которое обеспечивает API в стиле DirectX.Сам этим не пользовался.

Это зависит от вашего проекта.Если вы хотите визуализировать какую-то 3d-модель с окклюзией окружающей среды, радиацией или трассировкой фотонов, вам нужна ферма рендеринга с полнофункциональным программным рендером, например, blender / maya / 3dsmax.Если вы просто хотите перевести модель в автономный режим, вы можете собрать простое решение, используя Mesa3D или стандартный OpenGL во время обеденного перерыва.Если я правильно помню, povray был хорош для булевых форм, иначе говоря, Constructive Solid Geometry (булевы формы - это боль в реализации с использованием библиотек, которые работают с треугольниками, но тривиальны в raytracer).

...