3Dモデルインポート
3Dモデルのインポートは、環境、オブジェクト、アバターを構築するため、あるいは単に表示するためなど、既存のコンテンツをNeosに取り込むための優れた方法です。提供されているインポーターは、オープンソースのAssimpライブラリをベースにしており、さまざまな3Dフォーマットをサポートしています。お使いのコンピュータにサードパーティのソフトウェアをインストールすることで、さらに多くの形式をインポートすることができます。
また、独自のインポータを書いたり、スクリプトや外部のプログラムからNeosのライブラリを使ってNeosに搭載されているインポータを拡張することも可能です。インポーターの動作は、入力フォーマットを読み込んで、Neosのメッシュデータを表現するネイティブフォーマットとして使われているMeshXに変換し、texturesを抽出し、適切なmaterialsを作成して設定し、オブジェクトの階層を設定し、フォーマットからデータを表現するために必要なその他のコンポーネントをセットアップすることです。
インポートが完了すると、インポートされたオブジェクトはソースファイルに依存しなくなり、1つのNeosオブジェクトとして存在するようになります。
3Dモデルの読み込みに対応したファイル形式は、ファイルブラウザーにうすい黄色で表示されます。
インポートウィザード
3Dモデルをインポートする際には、ウィザードダイアログでモデルに関するいくつかの詳細情報が尋ねられます。これは、インポートされたメッシュ、テクスチャ、マテリアルデータを設定するための最適な設定を決定するのに役立ちます。例えば、3Dスキャンは通常、Unlit/PBR Emissiveマテリアルを使用した方が見栄えが良くなります。そうしないと、ライティングが「2回」適用され、非常に濁った外観になってしまいます。
PBRのための外部テクスチャ規約
モデルファイルに含まれるPBRマテリアルには十分にサポートされた規格がないため、Neosのモデルインポーターでは、ファイル名に基づいてテクスチャファイルをマテリアルに自動的にマッピングする命名規則を使用することができます。
このオプションを有効にするには、インポートウィザードの「高度な設定」で、「外部テクスチャーをインポート」オプションをチェックします。
これには以下のような制限があります。
- 今のところ、シングルマテリアルのモデルでのみ動作します。
- 複数のアルベドテクスチャを持つ複数のモデルは存在できません。
- ファイル名は、<myfilename>_<textype>.ext というスタイルでなければなりません。
- 有効な例、すべてアルベドにマッピングされます。
Potato_albedo.png Potato_Albedo.png Potato_ALBEDO.png Alien Spaceship_albedo.tga _albedo.jpg albedo.jpg
PBSのテクスチャ設定ガイド:
各プロパティには複数の<textype>文字列がありますが、使用するのは1つだけです(できれば最初の文字列)。
- Albedo: albedo, diffuse
- Normal: normal, bump
- Specular map: specular
- Metallic map: metallic, metalness
- Emission map: emission, emissive
- Ambient Occlusion: ao, occlusion, ambientocclusion
- Heightmap/displacement: height, heightmap, disp, displacement
スペキュラ/メタリックマップのアルファチャンネルは、スムースネス(逆ザラツキ)にマッピングされます。
現在サポートされている3Dフォーマット
Assimpライブラリでサポートされている3Dフォーマットは以下のとおりです。各フォーマットのサポートレベルは異なる場合があります。
一般的なフォーマット
- Autodesk ( .fbx ) - FBX 2011, 2012 または 2013である必要があります、それより新しいものは使えません
- Collada ( .dae )
- glTF ( .gltf, .glb )
- Blender 3D ( .blend )
- 3ds Max 3DS ( .3ds )
- 3ds Max ASE ( .ase )
- Wavefront Object ( .obj )
- Industry Foundation Classes (IFC/Step) ( .ifc )
- XGL ( .xgl,.zgl )
- Stanford Polygon Library ( .ply )
- AutoCAD DXF ( .dxf )
- LightWave ( .lwo )
- LightWave Scene ( .lws )
- Modo ( .lxo )
- Stereolithography ( .stl )
- DirectX X ( .x )
- AC3D ( .ac )
- Milkshape 3D ( .ms3d )
- TrueSpace ( .cob,.scn )
モーションキャプチャーフォーマット
- Biovision BVH ( .bvh )
- CharacterStudio Motion ( .csm )
グラフィックエンジンフォーマット
- Ogre XML ( .xml )
- Irrlicht Mesh ( .irrmesh )
- Irrlicht Scene ( .irr )
ゲームファイルフォーマット
- Quake I ( .mdl )
- Quake II ( .md2 )
- Quake III Mesh ( .md3 )
- Quake III Map/BSP ( .pk3 )
- Return to Castle Wolfenstein ( .mdc )
- Doom 3 ( .md5* )
- Valve Model ( .smd,.vta )
- Open Game Engine Exchange ( .ogex )
- Unreal ( .3d )
その他のフォーマット
- BlitzBasic 3D ( .b3d )
- Quick3D ( .q3d,.q3s )
- Neutral File Format ( .nff )
- Sense8 WorldToolKit ( .nff )
- Object File Format ( .off )
- PovRAY Raw ( .raw )
- Terragen Terrain ( .ter )
- 3D GameStudio (3DGS) ( .mdl )
- 3D GameStudio (3DGS) Terrain ( .hmp )
- Izware Nendo ( .ndo )
Blender
Blenderをインストールすると、.blendファイルのインポートのサポートが改善されます。というのも、このファイル形式に対するAssimpの限られたサポートを使う代わりに、NeosはバックグラウンドでBlenderを使ってファイルをGLBにエクスポートするからです。これが機能するためには、Neosはあなたが使用しているBlenderのインストールを見つける必要があります。
標準では、NeosはBlenderがインストールされている場所を探すために、以下のディレクトリを検索します。
C:\Program Files
C:\Program Files (x86)
C:\Program Files (x86)\Steam\steamapps\common\Blender
それがうまくいかない場合は、BlenderをNeosインストールのToolsフォルダにインストールすることもできます。例えば、C:\Program Files (x86)\Steam\steamapps\common\NeosVR\Tools\Blender
です。
もしBlenderがインストールされる共通の場所があれば、GitHub Issueを開いてその追加を提案してください。
サードパーティソフトウェア
FreeCAD お使いのコンピュータに FreeCAD ソフトウェアを標準のディレクトリにインストールすると、追加フォーマット、特に各種 CAD ファイルのサポートが可能になります。
- STEP Files (ISO 10303-21) ( .stp, .step )
- Open CAD format ( .oca, .gcad )
- Abaqus (.inp )
- CAD data NBSIR 80-1978 ( .iges, .igs )
- BREP Files ( .brep, .brp )
- Inventor ( .iv )