web-dev-qa-db-ja.com

UnityでのAutoCADオブジェクトの処理

私はUnity開発の初心者であり、Autocad開発の経験が豊富です。 autocadで作成された3Dソリッドと3Dメッシュテレインを使用してUnityインターフェイスに表示し、そのプロパティ(3Dソリッドカラー、寸法、ハンドルなど)を取得することは可能ですか?

8
Doicare

Unity supports .FBX、.dae(Collada)、. 3DS、.dxf、および.objファイル。 Autocadがこれらのいずれかにエクスポートできる場合、答えはyesです。可能ですしかし以下をお読みください。

Autocad、SolidWorks、またはその他の同様のソフトウェアで作成されたオブジェクトは、何らかの方法で直接Unityにインポートする必要がありますnot。 Unityには重すぎます。これらのソフトウェアのいずれかからモデルを使用する場合は、MayaやBlenderなどのソフトウェアにモデルをエクスポートしてから、モデルをクリーンアップします。 Unityにインポートする前に、ポリゴン数を減らしてください。

モデルのクリーンアップには時間がかかることに注意してください。その時間をMayaまたはBlenderで新しいモデルを作成するのに費やす必要があります。あなたの目標がゲームを作ることであるなら、あなたはMayaまたはBlenderのどちらかを学ぶ必要があります。 Autocadはそのために使用されません。すでにAutocadを使用しているので、UIが同じように見えるようになったので、Mayaを使用することをお勧めします。

[〜#〜]編集[〜#〜]

UnityでAutocadモデルを使用するか、Autocadでオブジェクトをモデル化することはまったく問題ないことを示唆する以下の回答が表示されます。モデルを作成するだけではありません。モデルの見栄えを良くし、Unityのレンダリングエンジンで適切に機能させるには、モデルに対していくつかの作業を行う必要があります。 Autocadを使用してゲームオブジェクトをモデル化しない理由はたくさんあります。

  • 1。UVマッピング/アンラッピング。

モデルをゲームエンジンにインポートする前に、モデルのUVをアンラップする必要があります。これがないと、テクスチャリングを行うのが難しく、問題が発生します。 「テクスチャシーム」と呼ばれる最大の問題の1つは言うまでもありません。

  • 2。モデルのテクスチャリング。

繰り返しますが、これはAutocadではなくMayaやBlenderなどのプログラム内で行われます。

  • 。テクスチャ/マップのベイク処理

非常に詳細なモデルを操作する場合、ほとんどの場合、マップをベイク処理する必要があります。複雑なマテリアルを使用してV-rayまたはMayaのレンダラーからマテリアルを生成する場合、最終結果をカラー、ノーマル、アルファなどのさまざまなタイプのマップにベイクする必要があります。これはライトベイクにも当てはまります。

  • 4。マップ転送

最初に、高ポリゴンをモデル化してから、マップを低ポリゴンに転送します。 Autocadではこれを行うことはできません。これは、ゲーム内のポリゴンの数を減らすため、非常に重要です。


上記のすべてはゲーム開発に関して非常に重要ですが、Autocadはそれらを処理するようには作られていません。

仕事に適したツールを使用してください。エンジニアリングにはAutocadを使用し、ゲームにはMayaまたはBlenderを使用してください。 moviesおよびart。それはそれと同じくらい簡単です。

10
Programmer

AutoCadからエクスポートするには、OBJ形式またはFBXを使用します。 Unityの「インポートできるファイル」ページは誤解を招く恐れがあります。エクスポートされたファイル形式は新年ごとに異なり、エクスポートプログラムの新しいバージョンはUnityと互換性がないことが多いためです。残念ながら、Unity開発者がインポートプロセスの更新に取り掛かるには数年かかります。

モデルの最適化に関して、Mayaでの「クリーンアップ」は冗談です。これは、Mayaが使用する形式に応じて「重い」モデルもエクスポートするためです。モデルのクリーンアップには優先順位がありますが、AutoCad製品は業界で最高であり、CADプログラムでクリーンアップしてから、OBJまたはFBXでエクスポートする場合は、 MayaはAutoCad製品でもあり、さまざまなプログラムでファイルを操作する必要はないと言っています。OBJまたはFBXエクスポート形式を使用していて、ファイルのほとんどがCGモデルである場合は、通常、CADプログラムからUnityに直接移行すると、正常に動作します。CADプログラムには、Sketchup、DAZ3Dなどのプログラムと同様に、モデルをクリーンアップするユーティリティがあります。 。面を三角形分割する必要はありません。通常、OBJはうまく機能します。

Unityにインポートするための最良のオプションは、可能であれば、任意のソースプログラムからOBJを使用することです。アニメーションや「ボーン」がない場合、ほとんどのモデルはこれを維持します。 OBJにエクスポートし、すべての面を三角測量しないオプションを選択し、テクスチャを含める場合は、問題ないはずです。モデルにアニメーションが含まれている場合は、ファイルサイズのコストがかなり高くなるFBX形式を使用する必要があります。

さらに、.objファイル、.mtlファイル、およびtexturesフォルダーを目的のUnity Assetフォルダーにドラッグアンドドロップする方が効果的です(「アセットのインポート」ネイティブUnity機能を試すよりも優れています)。

Unityが「インポートできるファイル」ページでインポートすると主張しているフォーマットの多くは、エクスポートプログラムのバージョンに基づいて無効であることに注意してください。たとえば、DXFファイルは最新ではなく以前のバージョンである必要があります。 Sketchupや.skpなどのプログラムは、Unity 5.6.0f3以降の2013年までさかのぼって、以前のバージョンを使用している場合にのみUnityにインポートされます。

通常、これらの問題を認識していて、CGモデルのエクスポート/インポートのいくつかの方法を試してみる場合は、成功するでしょう。明らかに、ゲーム開発者は、この種の欠陥を許容するのに十分なエンジンを評価しているため、Unityを使い続けています。

1
Little BIt