3

私はJava 3dが初めてです。のような状況に遭遇しました。3d studio max や Maya などの 3D モデリング ソフトウェアで開発された任意のオブジェクトの既製の開発済み 3D モデルを [靴の例として] Java プログラムでロードし、そのテクスチャまたは色のプロパティなどを更新したいのです。レンダリングしてから、更新されたモデルをエンド ユーザーに表示します。

だから私はすべての 3D 専門家に、私の目標を達成するためにどのように進めるべきかを尋ねています。どの入力をプログラムにロードする必要がありますか? ロードされたモデルを更新してレンダリングし、更新されたモデルをエンド ユーザーに表示するにはどうすればよいですか?

簡単な話では、ユーザーがインタラクションによって 3D モデルを変更できるようにしたいと考えています。たとえば、デフォルトの色やテクスチャ、ソールの色などのいくつかのフィールドで靴の 3D モデルを提供しました。モデルのソールは赤く着色され(つまり更新され)、デフォルトの色の靴の代わりに赤色のラバーソール靴でエンドユーザーに表示されます。

私の目標を達成するために私にアドバイスしてください。

4

2 に答える 2

4

まず、複雑なオブジェクトは通常、Blender や Art of Illusion などの 3D 編集ソフトウェアを使用して作成されます。これらのプログラムは、オブジェクトをいくつかの異なるファイル形式で出力できますが、最も一般的なのは .obj ファイル形式です。

もう 1 つの一般的な形式は .3ds です。これは、私の経験では、価値があるよりもはるかに多くの作業が必要です。彼らは Java3D 用の .3ds ファイル ローダーを作成しています。ページは次の場所にあります。

.obj ファイル形式を使用することをお勧めします。これは非常に使いやすいです。また、思ったほど難しくない独自のパーサーを作成することもできます。このようにして、オブジェクトが環境にどのようにロードされているかを正確に知ることができます。Javaには独自のパーサーが付属しています。使用方法については、次を参照してください。

残念ながら、このファイル形式を使用しているときに Blender でエクスポートされたファイルで多くの問題が発生しました。残念ながら、問題は修正されている可能性がありますが、よくわかりません。もっと多くの 3D の作業を行っていたときは、Art of Illusion を使用していましたが、Blender の方がはるかに強力であることはわかっていました。Blender は Mac でも実行できますが、適切にセットアップされた Windows ではよりスムーズに動作します。幸運を!サンプル コードが必要な場合はお知らせください。喜んで投稿させていただきます。

イリュージョンの芸術:

ブレンダー:

ユーザーがオブジェクトを変更できるようにする方法がわかりません。色や靴の種類などを変更できるようにしたい場合、それは大したことではありません。ユーザーがレースの長さを変更したり、実際のオブジェクトの構造を変更できるようにしたい場合は、3D 構造の深い知識が必要です。色を変えたい場合は、素材を変えるだけです。靴の種類を変更できるようにしたい場合は、別の靴オブジェクトをロードするだけです。これがお役に立てば幸いです。

コメントでは、テクスチャ マッピングについても話していますが、私の経験では、Art of Illusion よりも Blender の方がはるかに簡単です。これを達成するには、おそらくブレンダーを使用します。

ジョン

于 2013-02-14T21:42:57.983 に答える
1

ユーザーに別のテクスチャ/色を選択してもらいたいだけだと思いますよね?

次に、Java3D チュートリアルを参照してください。たとえば、次のようなものです。

さらに、あなたの靴は実際には 2 部構成のモデルだと思います。つまり、ソールだけが別の色になり、残りは別のテクスチャになる可能性がありますね。

その場合、それぞれ独自の外観を持つ 2 つのモデル/形状が必要になります。次に、たとえば、別のマテリアルを割り当てたり、マテリアルの色を変更したりして、ソールの外観を好きなように変更します。

于 2013-02-14T13:00:53.580 に答える