多くのモデル + テクスチャ マップのオフライン バッチ レンダリング用の 3D レンダリング エンジン?
-
13-11-2019 - |
質問
私は、衣服の 3D モデルからレンダリングする必要がある多くの PNG ファイルを使用するプロジェクトを設計しています (モデルを作成する人をまだ雇っていません)。モデルで使用されるさまざまなテクスチャ マップ (布のさまざまな種類や色など) が用意されています (各モデルは、異なるテクスチャで何度もレンダリングされる可能性があります)。将来的には、モデルとテクスチャ マップの両方を追加および変更するため、オンデマンドで PNG を自動的に再レンダリングできる必要があります。
したがって、次のいずれかを探しています。
コマンドラインから実行できるスタンドアロンの 3D レンダリング エンジン。カスタム スクリプトで簡単に生成できる入力形式を受け入れる必要があります。
Java や Ruby などの一般的なプログラミング言語と相互運用でき、一般的なモデリング ファイル形式で 3D モデルをロードできる 3D レンダリング ライブラリ。
私たちは、コマンド ラインから実行でき、XML シーン記述を入力として受け取る Yafaray (http://www.yafaray.org) を検討していますが、もっと良いオプションがあるかもしれないと確信しています。あなたが知っているオプションの長所/短所を客観的に説明していただけますか?
解決
オフライン用の 3D レンダリング エンジン
Makehuman はいくつかを使用します 外部レンダラー. 。ぜひチェックしてみてください。
あなたが知っているオプションの長所/短所を客観的に説明していただけますか?
いいえ。どのようなプロジェクトを設計しているのかは不明です。
この時点で、カスタム レンダー ファームを最初から作成しようとしているのではないかと思います。私の考えが正しければ、正しい解決策は既存のソフトウェアを使用することになります。Maya/3dsmax にはレンダー ファームがサポートされており、次のことが可能になるはずです。 Blenderベースのレンダーファームも作成します。これらのパッケージから、Maya は間違いなくスクリプト サポート (MEL/Python だと思います) を備えており、blender のかなりの部分は Python で書かれています。
GL スタイルのレンダラーが必要な場合は、 メサ3D OpenGL と「ほぼ」互換性のあるライブラリを提供しますが、グラフィック アクセラレーションなしで CPU 上で動作します。つまり、次の目的で使用できるはずです オフスクリーン ウィンドウを作成せずにレンダリングします。CPU 上ですべてをレンダリングするため、GPU で高速化されたレンダリングよりもはるかに遅くなります。
それもあります ピクソマティック DirectX スタイル API を提供するソフトウェア レンダラー。これは私自身は使用したことがありません。
それはプロジェクトによって異なります。アンビエント オクルージョン、ラジオシティ、またはフォトン トレーシングを使用して 3D モデルをレンダリングしたい場合は、blender/maya/3dsmax などの本格的なソフトウェア レンダーを備えたレンダー ファームが必要です。単にモデルをオフラインでレンダリングしたい場合は、昼休みに Mesa3D または標準 OpenGL を使用して簡単なソリューションを組み立てることができます。私の記憶が正しければ、povray はブール形状、別名 Constructive Solid Geometry に適していました (ブール形状は、三角形を操作するライブラリを使用して実装するのは面倒ですが、レイトレーサーでは簡単です)。