Preview3D
入手

.x3d ファイルとは?X3D、VRML と Mac で開く方法

X3D(Extensible 3D)は、Web3D Consortium による 3D シーンのためのオープンな ISO 規格で、1990 年代の VRML の後継です。.x3d ファイルは、形状、マテリアル、ライト、視点、アニメーションを記述する XML です。ただし同じシーンをいくつもの方法で書けるので、どのプログラムもそのすべてを読めるわけではありません。macOS は単体では X3D を開けません。

概要

拡張子
.x3d, .x3dv, .x3db, .x3dz
種類
3D シーン
開発元
Web3D Consortium
登場
2004
規格
ISO/IEC 19775-1:2023
アプリなしの macOS
知らない:プレビューもサムネイルもなし

情報の確認日:2026年11月4日

読める XML

.x3d ファイルは読めるテキストです。次はテスト用に私が書いた小さなシーンで、2 つの三角形から成る赤い正方形と、その隣の青い立方体です。

<?xml version="1.0" encoding="UTF-8"?>
<X3D profile="Interchange" version="3.3">
  <Scene>
    <Shape>
      <Appearance><Material diffuseColor="1 0 0"/></Appearance>
      <IndexedFaceSet coordIndex="0 1 2 -1 0 2 3 -1">
        <Coordinate point="0 0 0 1 0 0 1 1 0 0 1 0"/>
      </IndexedFaceSet>
    </Shape>
    <Transform translation="3 0 0">
      <Shape><Appearance><Material diffuseColor="0 0 1"/></Appearance><Box size="1 1 1"/></Shape>
    </Transform>
  </Scene>
</X3D>

profile は、シーンに必要な機能のセットを示します。形状の交換なら Interchange で十分で、ほかに Interactive、Immersive、Full、CADInterchange などのプロファイルがあります。version は X3D のバージョンです。各 Shape は、見た目(Appearance、ここでは Material の色)と形状を組み合わせます。1 つ目の形状は、点(Coordinate)と頂点の番号で書いたメッシュで、-1 で面が終わります。2 つ目は Box プリミティブです。立方体は三角形として書かれておらず、ファイルを読むプログラムが組み立てます。Transform はそれを右に 3 単位移動します。

1 つのシーン、いくつものエンコーディング

X3D にはいくつものエンコーディングがあります。シーンは同じで、書き方だけが変わります。

拡張子エンコーディング見分け方
.x3dXML<?xml と <X3D で始まる
.x3dvClassic VRML(VRML に似たテキスト)1 行目が #X3D V3.3 utf8
.x3db圧縮されたバイナリ読めるテキストではない
.x3djJSON{ で始まる
.x3dz、.x3dvz同じものを gzip でまとめたものfile が gzip compressed data と表示する
.wrlVRML97(X3D の前身)1 行目が #VRML V2.0 utf8

どれなのかはターミナルで分かります。

file model.x3d

私のテストファイルでは、macOS は XML に対して XML 1.0 document text、Classic VRML に対して X3D (Extensible 3D) model, VRML format、まとめたファイルに対して gzip compressed data と答えました。

エンコーディングが重要なのは、プログラムがその一部しか読めないことが多いからです。たとえば私のアプリは XML しか読めません。まとめたファイルは、まず展開してください。

gzip -dc model.x3dz > model.x3d

単位:メートル、Y が上

X3D の仕様によると、長さの基本単位はメートルです。座標系は右手系で、既定の視点は Z 軸に沿って原点を向き、X が右、Y が上です。バージョン 3.3 からは、ファイルが UNIT 文で単位を変更できます。XML では次のように書きます。

<head><unit category="length" name="millimetre" conversionFactor="0.001"/></head>

すべてのプログラムがこれを読むわけではありません。私のアプリが X3D を読むのに使っているライブラリ Assimp は、私のテストではこれを無視しました。ミリで一辺 10 単位の立方体は、10 のままでした。ですから、開いたあとと変換したあとにサイズを確認してください。

X3D と VRML

VRML(Virtual Reality Modeling Language)は 1997 年に ISO/IEC 14772-1 規格となり、そのファイルは拡張子 .wrl を使います。Web3D はいま、X3D を「4th-generation VRML」(第 4 世代の VRML)であり、VRML の直接の上位互換だと説明しています。VRML で書けるものはすべて X3D で書け、Classic VRML のエンコーディングは見た目もほとんど同じです。逆はうまくいきません。Web3D のメーリングリストでの議論によると、X3D を VRML に変換するとシーンの一部が失われることがあります。古い VRML では X3D の多くの機能を表現できないからです。Web3D によると、Immersive プロファイルに収まるシーンなら問題なく変換できます。

X3D の用途

  • X3DOM や X_ITE のライブラリを使った、プラグイン不要の Web ページ内の 3D。
  • 医療やボリュームデータ(MedicalInterchange プロファイル)を含む、科学と工学の可視化。
  • CAD のアーカイブと引き渡し。 Library of Congress は Recommended Formats Statement で X3D を CAD に使える形式として挙げており、米国国立公文書記録管理局(NARA)は CAD モデルの移管に推奨する形式としています。

X3D の生まれ

Web3D Consortium は、VRML の後継として X3D を開発しています。最初は ISO/IEC 19775:2004 として発行され、続いて 2006 年(3.1)、2008 年(3.2)、2013 年(3.3、UNIT 文が加わった版)のバージョンが出ました。バージョン 4.0 は ISO/IEC 19775-1:2023 として発行され、Web3D は 2024 年の初めにそれを発表しました。HTML に直接埋め込むシーン、glTF モデルとの連携、物理ベース(PBR)のマテリアル、Web Audio のサウンド、HAnim 2.0 のキャラクターアニメーションが加わっています。バージョン 4.1 はまだ草案です。

Mac で X3D を開く方法

macOS は X3D を知りません。macOS 27.0.1 にはそのファイルの種類がなく、Apple のプレビューのガイドも 3D 形式として挙げておらず、クイックルックでも Finder でも表示されません。

  • Castle Model Viewer は無料で、X3D、VRML、glTF などの形式を読めます。X3D や STL への変換もできます。安定版 5.2.0 は Mac では Intel 専用で、Apple シリコン向けにはいまのところ開発版スナップショット 5.3.0 しかありません。アプリは署名されていないので、初めて起動するときに macOS がブロックします。実行を許可する方法は、作者がそのページで説明しています。
  • Sunrize は X_ITE の作者による X3D エディタで、Mac 用は GitHub で ZIP として入手できます。これも署名されていません。
  • Blender は、バージョン 4.2 以降は「Web3D X3D/VRML2 format」エクステンションで X3D と VRML を読み込めます。バージョン 4.1 までは Blender に含まれていました。
  • X_ITE と X3DOM は Web ページに X3D を表示します。Web の制作者向けのライブラリで、ファイルをドロップして見るビューアではありません。X_ITE は XML、JSON、Classic VRML、VRML97 を、gzip でまとめたものも含めて読めます。
  • Preview3D(私のアプリ)は、Mac で .x3d ファイルをウィンドウ、クイックルック、Finder のサムネイルで開きます。iPad、iPhone、Apple Vision Pro でも使えます。

Preview3D は Assimp ライブラリを通して X3D を読みます。アプリが使っているのと同じビルドで試してみました。バージョン 3.3 と 4.0 の XML を開け、プリミティブ(箱、球、円柱、円錐)、面や三角形で作ったメッシュ、再利用される形状(DEF と USE)にも対応します。表示するのは形状だけで、単色です。ファイルのマテリアルやテクスチャは使わず、アニメーション、センサー、スクリプトも実行しません。モデル情報には、ファイルの単位での寸法と三角形の数、そしてメッシュチェックがあります。iPad と iPhone では、ファイルの単位を読まないので、AR でモデルを机に合わせた大きさで置きます。

Preview3D が開けないものは次のとおりです。

  • .x3dv、.x3db、.x3dj のエンコーディングと、古い .wrl
  • gzip でまとめた .x3dz ファイル(先に展開してください。上記参照)
  • X3D 4 の物理ベースのマテリアル PhysicalMaterial を使ったシーン(私のテストでは、シーン全体の読み込みに失敗しました)
  • 仕様どおりの書き方(url='"part.x3d"')の Inline でほかのファイルを取り込むシーン(これも私のテストでは失敗しました)

X3D を STL に変換する

Mac では、Preview3D の ファイル → モデルを別名で書き出し…(⌥⌘E)で、何もアップロードせずに STL、OBJ、PLY に変換できます。色、テクスチャ、ライト、アニメーション、インタラクティブな要素は失われます。プリミティブはファイルを読むときに三角形に変換されるので、球は STL では多面体になります。そして単位に注意してください。X3D はメートルで扱いますが、スライサーはたいてい STL の数値をミリとして受け取ります。スライサーでモデルがとても小さく見えたら、1000 倍に拡大してください。

よくある質問

.x3d ファイルとは何ですか?

X3D 規格の 3D シーンを XML で書いたもので、形状、マテリアル、ライト、視点、アニメーションが入っています。X3D は VRML の後継で、ISO/IEC 19775 規格です。

X3D と VRML の違いは何ですか?

X3D のほうが新しい規格です。VRML のすべてを含み、さらに機能とエンコーディングを加えています。VRML のファイルは拡張子 .wrl を使います。

.x3dv と .x3dz ファイルとは何ですか?

.x3dv は、同じシーンを Classic VRML のエンコーディングで書いたものです。拡張子の末尾の z は、ファイルが gzip でまとめられていることを表します。gzip -dc で展開してください。

Mac はほかのアプリなしで X3D を開けますか?

いいえ。macOS 27 には X3D のファイルの種類がなく、プレビューでもクイックルックでも表示されません。

X3D を STL に変換するにはどうすればよいですか?

Mac の Preview3D で、ファイル → モデルを別名で書き出し… を使うか、Castle Model Viewer を使います。そのあとスライサーでサイズを確認してください。

スライサーで X3D のモデルがとても小さいのはなぜですか?

X3D はメートルで扱い、スライサーは数値をミリとして受け取るからです。モデルを 1000 倍に拡大してください。

関連ページ

出典

Mac で開けなかった X3D や VRML のモデル(たとえば講座や科学系のソフトのもの)はありますか? エンコーディングと、どこから来たものかを添えて、apps@xfanta.com までお知らせください。

Preview3D で開く

STEP、3MF、STL、G-code、BGCODE などを Mac、iPad、iPhone、Vision Pro で。一度の購入で、アカウントもネットワークも不要です。

App Store の Preview3D