0

3D レンダリングは計算コストが高いことが知られています。

Apache Hadoopまた、分散 3D レンダリング (画像またはビデオのレンダリング) に使用して、レンダリング時間を短縮したいと考えています。Hadoop について学んだ後、次の 2 つのことが必要であることがわかりました。

  • 視覚化されるデータ (おそらく、指示を含むある種のファイル (長方形の描画、座標の設定、色の設定など))
  • 上記のファイルをレンダリングするツール/プログラム/ユーティリティ。私は自分のプログラムからそれを呼び出し、データを含むファイルを指すようにしたいと考えています。(このプログラムにコマンド ライン API があると便利です)。

しかし、私は 3D レンダリングについて何も知らないので、3D 画像/ビデオをレンダリングするためのツール (オープンソース) を提案するのに助けが必要です。また、入力データについては何も知りません。ですので、レンダリングツール+レンダリングするファイル形式を教えていただけると助かります。

.rib視覚化するデータとしてファイル形式のHadoop を使用rndrし、このデータをレンダリングするプログラムについて聞いたことがあります。だから私はいくつかのアナログが必要です。

私の目標は、3D レンダリングではなく、Hadoop と分散計算についてより深く学ぶことです。そのため、最も簡単な解決策を提案してください。

ありがとう。

4

1 に答える 1

0

KISS:gnuplot

Hadoopの使用のみに関心があり、レンダリングの唯一の要件が、入力ファイルを受け取り、完成したアニメーションを表示できるように画像を作成することである場合は、をお勧めしgnuplotます。これは実際にはグラフ描画プログラムですが、スクリプトを使用して画像ファイルを生成します。最も便利なのは、レンダリングする3Dワールドを作成するのではなく、数式を入力して描画することです。

開始からの時間のオフセット値を除いてすべて同じn個のファイルを準備するだけで、gnuplotは適切なフレームを生成します。

これは最も単純なオプションであり、Hadoop側に集中できます。いかに簡単かを示すために、これにより、3枚羽根のファンが回転するアニメーションのフレームが作成されます。

set xrange[-1:1]
set yrange[-1:1]
set polar
unset key
unset border
unset tics
set terminal png size 1000,1000
set output "frame_$FRAME.png" 
plot cos(3*t+$FRAME/5)

Gnuplotの素晴らしいところは、インタラクティブなプロンプトにコマンドを入力してグラフを操作することです。これらは、スクリプトに入力したコマンドと同じです。したがって、満足のいくものができsave 'newscript.gpt'たら、使用したコマンドを実行するか、コピーすることができます。gnuplot newscript.gptプロンプトで実行するだけでグラフを再作成できます。

ちなみに、レンダリングが難しいシーンは、実際に作成するよりもシミュレートする方が簡単なので、gnuplotスクリプトにsleepコマンドを入れるだけで、15秒以上かかるようになります。

バナナ全体:Blender

Blender3Dレンダリングシステムです。サーバーファームのいくつかの主流のアニメーションのレンダリングシステムとして、あなたが説明したとおりに使用されていると思います。かなりの学習曲線がありますが、チュートリアルやその他の既存のアニメーションプロジェクトファイルを入手できるはずです。そこから、特定のフレームのコマンドとしてレンダリングエンジンを呼び出す方法を理解する必要があります。私はblenderで静的レンダリングを行ったことがありますので、それ以上先に進むことはできません。これは視覚的にはより印象的ですが、学術的にはそれほど印象的ではなく、その側面でより多くの時間を無駄にするでしょう。

私の選択

個人的にはgnuplotを使います。splot2Dではなくコマンドを使用して3Dプロットを作成できplotます。想像しているように、3Dシーンのレンダリングではありませんが、スクリプトを使用して画像を作成するという目的を達成します。セットアップが完了するまで、上記のような完全に基本的なものから始めて、さらに複雑にすることができます。実装の観点からは、gnuplotスクリプトの実行は、データファイルも必要とするスクリプトの実行よりも簡単ですが、データを事前に生成して、コマンドの代わりにコマンド+スクリプト+データを実行するときにgnuplotにそれを読み取らせるのは簡単です。 +スクリプト。重要なのは、歩く前に走ることではなく、難易度を徐々に上げることです。

最終的に最後に暇があり、blenderを使用するように変更した場合、それはすべて無料の勝利であり、Hadoopプロジェクトを危険にさらすことはありません。

于 2013-03-10T10:35:37.903 に答える