.x
[Wikipedia|▼Menu]
.mw-parser-output .hatnote{margin:0.5em 0;padding:3px 2em;background-color:transparent;border-bottom:1px solid #a2a9b1;font-size:90%}

この項目では、マイクロソフトの3Dモデルファイル形式について説明しています。X68000系の実行ファイル形式については「Human68k」をご覧ください。

.X ファイル拡張子.x
開発者マイクロソフト
種別オブジェクトファイル
拡張dotXSI

.xファイル(エックス-ファイル)とは、マイクロソフトが開発した汎用のオブジェクトファイルである。DirectXの一部バージョンで標準サポートされ、ポリゴンメッシュデータとして読み込むことができる。
概要

ファイルフォーマットとして、テキスト形式バイナリ形式が定義されている。テンプレート駆動型フォーマットを採用しており、オブジェクトのインスタンスと階層もサポートされている。ユーザー(開発者)で拡張することができ、オブジェクトの格納を定義可能である。
ポリゴンメッシュ

ポリゴンメッシュファイルとして、ポリゴンの頂点データ・マテリアル・テクスチャのパスやUV座標の定義・簡易的なアニメーションを、オブジェクトとして定義できる。

一方で、汎用性を重視したデータ構造(ファイルフォーマット)のため描画処理が遅く、高度なアニメーションの定義にも適さない[1]

LightWave3DMayaSoftimageCinema 4Dや、フリーウェアでも六角大王といった数々の3DCGソフトウェアが対応している。MetasequoiaはXフォーマットのエクスポートのみに対応しており、またアニメーションはサポートされていない。
歴史

DirectX 2.0からテキスト形式が導入され、DirectX 3.0でバイナリ形式が、DirectX 6.0で読み書きするためのメソッドが追加された。DirectX SDKでも「June 2008」よりDirectX Viewerというファイルビューアーが標準で用意された。

Xフォーマットの読み書きはD3DX(英語版)というマイクロソフト公式のDirect3D (D3D) 拡張ライブラリにてサポートされている[2][3]。なお、D3DXはアプリケーションの開発に使用するSDKバージョンごとにDLLが異なり、またD3DXを使用したアプリケーションの実行には「DirectXエンドユーザーランタイム」のインストールが別途必要となる。

しかし、Xフォーマットが標準対応されたのはDirectX 9.0までであり、2006年にリリースされたDirectX 10.0以降ではフォーマットとしてサポートされなくなった。代わりにSDK Mesh File Format (.sdkmesh) という形式がDirectX Utility Toolkit (DXUT) でサポートされるようになったが、これはSDKのサンプル用に設計されたフォーマットであり、アプリケーション製品での利用は避けるように、との記載がある[4][5][6]。2009年にDirectX 11がリリースされ、DXUTもDirectX 11へと対応した。

2012年にリリースされたVisual Studio 2012では新たにCMO形式 (Compiled Mesh Object[7]; .cmo) が導入された[8]。D3DX11ライブラリの代替として開発されたDirectXTK (DirectX Tool Kit)[9] では、前述のCMO形式、従来のSDKMESH形式のほか、Windows 8 app samplesで使われたVBO形式 (.vbo)[8]、SDKMESH形式を物理ベースレンダリング (PBR) のマテリアルに対応させたSDKMESH v2形式 (.sdkmesh2) の読み込みに対応した[8] (変換はDirectXMeshに付属するMeshConvertツールで可能[10][8])。

なおDirectXおよびDirect3DはC++向けのAPIだが、C#Visual Basic .NETといった.NET Framework環境のプログラミング言語向けのバインディングとしてManaged DirectX (MDX) があり、Xフォーマットが標準サポートされていたが、その後MDXは廃止された。MDXの後継として、XNAでもXフォーマットが標準サポートされていたが、XNAも廃止された。
脚注・出典^ DirectX によるゲームプログラミング入門 : 第 6 章 実践ゲーム開発 。MSDN アカデミック ポータル, Internet Archive
^ D3DXLoadMeshFromX function (D3DX9Mesh.h) - Win32 apps 。Microsoft Docs
^ D3DXSaveMeshToX function (D3DX9Mesh.h) - Win32 apps 。Microsoft Docs
^ DXUT/SDKmesh.h at master ・ microsoft/DXUT 。GitHub
^ SDK メッシュ ファイル形式の概要 - DirectX SDK (August 2008) 。Microsoft Docs
^ SDK メッシュ ファイル形式の概要 - DirectX SDK (August 2009) 。Microsoft Docs
^ Developing an app with the Visual Studio 3D Starter Kit, part 1 of 3 Microsoft 2013年3月26日
^ a b c d Geometry formats Microsoft 2019年4月15日
^ Where is the DirectX SDK? Microsoft 2018年5月31日
^ DirectXMesh Microsoft

関連項目

Microsoft DirectX

Direct3D

dotXSI - Xファイル形式を拡張した形式。

外部リンク

X ファイル (レガシー) (Direct3D 9)










3Dファイル形式
レガシー

3DCG

Wavefront OBJ形式 (*.obj)

PLY形式 (*.ply)

DirectX .x形式 (*.x)

3D Studio形式 (*.3ds)

Softimage dotXSI形式 (*.xsi)


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:11 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef