D3DXSaveMeshToX 関数

メッシュを .x ファイルに保存します。

構文

HRESULT D3DXSaveMeshToX(
  _In_       LPCTSTR            pFilename,
  _In_       LPD3DXMESH         pMesh,
  _In_ const DWORD              *pAdjacency,
  _In_ const D3DXMATERIAL       *pMaterials,
  _In_ const D3DXEFFECTINSTANCE *pEffectInstances,
  _In_       DWORD              NumMaterials,
  _In_       DWORD              Format
);

パラメーター

pFilename [in]

種類: LPCTSTR

ファイル名を指定する文字列へのポインター。 コンパイラ設定で Unicode が必要な場合、データ型 LPCTSTR は LPCWSTR に解決されます。 それ以外の場合、文字列データ型は LPCSTR に解決されます。 「解説」を参照してください。

pMesh [in]

種類: LPD3DXMESH

.x ファイルに保存するメッシュを表す ID3DXMesh インターフェイスへのポインター。

pAdjacency [in]

型: const DWORD*

メッシュ内の各面の 3 つの近傍を指定する、1 つの面に 3 つの DWORD の配列へのポインター。 このパラメーターは NULL である可能性があります。

pMaterials [in]

型: const D3DXMATERIAL*

.x ファイルに保存するマテリアル情報を含む D3DXMATERIAL 構造体の配列へのポインター。

pEffectInstances [in]

型: const D3DXEFFECTINSTANCE*

メッシュ内の属性グループごとに 1 つずつ、効果インスタンスの配列へのポインター。 このパラメーターは NULL である可能性があります。 効果インスタンスは、効果を初期化するために使用される状態情報の特定のインスタンスです。 詳細については、「 D3DXEFFECTINSTANCE」を参照してください。

NumMaterials [in]

型: DWORD

pMaterials 配列内の D3DXMATERIAL 構造体の数。

書式 [入力]

型: DWORD

.x ファイルを保存するときのファイル形式と保存オプションの組み合わせ。 「D3DX X ファイル定数」を参照してください。

戻り値

型: HRESULT

関数が成功した場合、戻り値はD3D_OK。 関数が失敗した場合、戻り値は次のいずれかになります:D3DERR_INVALIDCALL。

解説

コンパイラ設定によって、関数のバージョンも決定されます。 Unicode が定義されている場合、関数呼び出しは D3DXSaveMeshToXW に解決されます。 それ以外の場合、ANSI 文字列が使用されているため、関数呼び出しは D3DXSaveMeshToXA に解決されます。

既定のファイル形式はバイナリです。ただし、ファイルがバイナリ ファイルとテキスト ファイルの両方として指定されている場合は、テキスト ファイルとして保存されます。 ファイル形式に関係なく、圧縮形式を使用してファイル サイズを小さくすることもできます。

この関数の使用方法の一般的なコード例を次に示します。

ID3DXMesh*    m_pMesh;           // Mesh object to be saved to a .x file
D3DXMATERIAL* m_pMaterials;      // Array of material structs in the mesh
DWORD         m_dwNumMaterials;  // Number of material structs in the mesh
    
DWORD dwFormat = D3DXF_FILEFORMAT_BINARY;  // Binary-format .x file (default)
// DWORD dwFormat = D3DXF_FILEFORMAT_TEXT; // Text-format .x file
    
// Load mesh into m_pMesh and determine values of m_pMaterials and 
// m_dwNumMaterials with calls to D3DXLoadMeshxxx or other D3DX functions
    
// ...
        
D3DXSaveMeshToX(
    L"outputxfilename.x",
    m_pMesh,
    NULL,
    m_pMaterials,
    NULL,
    m_dwNumMaterials,
    dwFormat );

要件

要件
ヘッダー
D3DX9Mesh.h
ライブラリ
D3dx9.lib

関連項目

メッシュ関数

D3DXEFFECTDEFAULT

D3DXEFFECTINSTANCE