Houdini 21.0 インポートとエクスポート

インポートとエクスポート GLTF

HoudiniでGLTFファイルをインポート/エクスポートする方法。

On this page

Version

HoudiniのGLTFインポータとエクスポータは、GLTF2.0の仕様に準拠しています。

メニュー項目

To...Do this

GLTFシーンをインポートする

メインメニューから File ▸ Import ▸ GLTF Scene を選択します。

現行シーン(またはオブジェクトのサブセット)をGLTFファイルにエクスポートする

メインメニューから File ▸ Export ▸ GLTF を選択します。

ノード

GLTFデータのインポートまたはエクスポートは、以下のノードを使用します:

GLTF Hierarchy Objectノード

.gltfファイルまたは.glbファイルをオブジェクトノードの階層としてインポートします。

GLTF SOPノード

.gltfファイルまたは.glbファイルのジオメトリをSOPレベルでインポートします。

ROP GLTF SOPノード

SOPレベルのジオメトリを.gltfファイルまたは.glbファイルにエクスポートします。

ROP GLTF Character Output SOPノード

SOPレベルのリグキャラクタを.gltfファイルまたは.glbファイルにエクスポートします。

GLTF Character ROPノード

SOPレベルのリグキャラクタ(KineFX)を.gltfファイルまたは.glbファイルにエクスポートします。

GLTF ROPノード

シーン、オブジェクト、SOPを.gltfファイルまたは.glbファイルにエクスポートします。

対応しているGLTFの機能

以下のテーブルでは、GLTFインポート/エクスポートのノードが対応しているGLTF仕様の機能を載せています。

エクスポータ インポータ
GLTF ROP/ROP GLTF Output SOP GLTF Character/ROP GLTF Character Output SOP GLTF SOP GLTF Hierarchy
シーン エクスポートされるすべてのものが単一シーン内に格納されます。 エクスポートされるすべてのものが単一シーン内に格納されます。 GLTF SOP はGLTFシーン全体を取り込むことができます。GLTFシーン内のプリミティブを、平坦な階層のプリミティブ、または、個々のパックプリミティブとして取り込むことができます。 GLTF Hierarchy オブジェクトノードはGLTFシーン全体をOBJネットワーク内に取り込むことができます。 GLTF SOP インポータとは違って、 GLTF Hierarchy オブジェクトノードインポータは、OBJネットワークにシーンを取り込むので、GLTFノード階層を再現することができます。
ノード シーンのルートノードだけでなく、シーン内のすべてのOBJノードがGLTFノードとしてエクスポートされます。 スキンメッシュとそのスケルトン内のすべてのジョイントがGLTFノードとしてエクスポートされます。 GLTF SOP は、特定のノードを取り込むことができます。このオプションを選択した場合、選択したルートノードのすべての子ノードまでもが取り込まれます。ノード階層内のプリミティブを、平坦化されたジオメトリとして、または、別々のパックプリミティブとして取り込むことができます。 選択したGLTFシーン内のすべてのノードが、生成されたOBJネットワーク内に取り込まれます。
メッシュ ROP GLTF Output ノードは、SOPノードジオメトリをGLTFメッシュとしてエクスポートします。場合によっては、そのジオメトリはGLTFと互換性があるように処理されます。例えば、メッシュのフェースが4頂点以上で構成されている場合は、そのフェースが三角形に分割されます。GLTFにはHoudini頂点に似た概念が ない ので、同じポイントを共有する各頂点が異なるアトリビュート値を持っている場合には、そのジオメトリポイントを分ける必要性が出てきます。 KineFX静止ジオメトリがGLTFメッシュにエクスポートされ、そのジオメトリを使ってGLTFスキンが用意されます。 GLTF SOP インポータは、特定のメッシュを取り込むことができます。そのメッシュ内のプリミティブを平坦な階層のジオメトリまたは別々のパックプリミティブとして取り込むことができます。 取り込んだGLTFノードに関連しているGLTFメッシュも取り込まれます。そのメッシュは、内部の GLTF SOP によってSOPレベルで取り込まれます。
マテリアル ROP GLTF Output ノードは、Princpled ShaderマテリアルからGLTFマテリアルへのエクスポートに対応しています。 ROP GLTF Character Output ノードは、Princpled ShaderマテリアルからGLTFマテリアルへのエクスポートに対応しています。 GLTF SOP インポータは、マテリアルの割り当てをshop_materialpathアトリビュートに取り込むことができますが、このノードはSOPレベルでしか動作しないので、マテリアルを 作成することはできません 。完全にマテリアルを取り込みたいのであれば、 GLTF Hierarchy オブジェクトノードを使用してください。 GLTF Hierarchy オブジェクトノードインポータは、GLTFマテリアルをPrincipled Shader(1個のマテリアルネットワーク内にすべての機能が含まれている万能シェーダ)として取り込みます。さらに、このインポータは、マテリアルを適切なジオメトリに自動的に割り当てます。
テクスチャ Principled Shaderマテリアルで使用されている次のテクスチャマップがすべてエクスポートされます: (Base Color → baseColorTexture)、(Roughness → metallicRoughnessTexture)、(Metallic → metallicRoughnessTexture)、(Base Bump and Normal → normalTexture)、(Emission → emissiveTexture)、(Occlusion → occlusionTexture)。 Principled Shaderマテリアルで使用されている次のテクスチャマップがすべてエクスポートされます: (Base Color → baseColorTexture)、(Roughness → metallicRoughnessTexture)、(Metallic → metallicRoughnessTexture)、(Base Bump and Normal → normalTexture)、(Emission → emissiveTexture)、(Occlusion → occlusionTexture)。 GLTF SOP インポータは、SOPレベルでしか動作しないので、テクスチャを インポートしません 。テクスチャを取り込みたいのであれば、 GLTF Hierarchy オブジェクトノードを使用してください。 取り込んだGLTFマテリアルで見つかったテクスチャマップは、Principled Shaderでは次のように構成されます: (normalTexture → Base Bump and Normal)、(emissiveTexture → Emission)、(occlusionTexture → Occlusion)、(baseColorTexture → Base Color)。
カメラ シーン内のカメラはGLTFシーンにエクスポートされます。 ROP GLTF Character Output ノードは、SOPレベルで動作するので、OBJノードをエクスポート できません 。シーン全体をエクスポートしたいのであれば、 ROP GLTF Output エクスポータノードを使用してください。 GLTF SOP インポータはSOPレベルで動作するので、カメラをインポート できません 。 カメラのインポートに対応していません。
スキン(キャプチャ) ROP GLTF Output ノードはスキンメッシュをエクスポートしません。KineFXキャラクタをエクスポートしたいのであれば、 ROP GLTF Character Output エクスポータノードを使用してください。 KineFXキャプチャポーズはGLTFスキンにエクスポートされます。GLTFの制限が原因で、スケルタルアニメーションをエクスポートする場合、静止ジオメトリを変形メッシュにすることはできません。 スキン情報のインポートに 対応してません 。 スキン情報のインポートに 対応してません 。
アニメーション ROP GLTF Output ノードは、トランスフォームアニメーションとアニメーション変形メッシュのエクスポートに対応しています。トランスフォームアニメーション対応はGLTFに組み込まれているので、GLTFノードのトランスフォームにキーフレームを打つことで、そのトランスフォームアニメーションをGLTFに直接エクスポートすることができます。アニメーション変形メッシュのエクスポートは、メッシュのアニメーションのフレーム毎にGLTFモーフターゲットを作成するというあまり一般的でない手法を採用しています。それらのモーフターゲット間を動くGLTFアニメーションは線形補間されます。 KineFXアニメーションポーズを使用して、GLTFスケルトンのアニメーションをエクスポートします。アニメーションしかエクスポートできません。 アニメーションのインポートに対応してません。 アニメーションのインポートに対応してません。
Lights Houdiniシーン内のライトは、KHR_lights_punctual GLTF拡張を使用してGLTFシーンにエクスポートされます。 ROP GLTF Character Output ノードはSOPレベルで動作するので、OBJノードをエクスポート できません 。シーン全体をエクスポートしたいのであれば、 ROP GLTF Output エクスポータノードを使用してください。 GLTF SOP インポータはSOPレベルで動作するので、ライトをインポート できません 。 ライトのインポートに対応していません。

アルファのブレンドを制御する方法

エクスポートされるマテリアル内のアルファチャンネルに対してブレンドモードを指定するには、そのマテリアルにレンダープロパティを追加する必要があります。

  1. マテリアル内のPrincipled Shader VOPノードを選択します。

  2. パラメータエディタの ギアメニューから Edit Rendering Parameters を選択します。

  3. Render Properties ツリーから Material Options フォルダを探して、その中から glTF フォルダを探します。

  4. その glTF フォルダ内の glTF AlphaMode と glTF AlphaCutoff のプロパティをこのノードの Existing Parameters ツリー内にドラッグします。

  5. Apply をクリックします。

これらの新しいパラメータを使用することで、マテリアルをGLTFにエクスポートする時のアルファのブレンドの挙動を制御することができます。

インポートとエクスポート