次の方法で共有


D3DXSaveMeshToX

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

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

パラメータ

  • pFilename
    ファイル名を指定する文字列へのポインターです。コンパイラーの設定で Unicode が必要な場合、データ型 LPCTSTR は LPCWSTR に解決されます。それ以外の場合、文字列データ型は LPCSTR に解決されます。「解説」を参照してください。
  • pMesh
    .x ファイルに保存するメッシュを表す ID3DXMesh インターフェイスへのポインターです。
  • pAdjacency
    面ごとの 3 つの DWORD 値を格納する配列へのポインターです。この配列によって、メッシュの各面に隣接した 3 つの面を定義します。このパラメーターは NULL 値でもかまいません。
  • pMaterials
    .x ファイルに保存するマテリアル情報を含む D3DXMATERIAL 構造体の配列へのポインターです。
  • pEffectInstances
    エフェクト インスタンスの配列へのポインターです。この配列には、メッシュ内の属性グループごとに 1 つのエフェクト インスタンスが格納されます。このパラメーターは NULL 値でもかまいません。エフェクト インスタンスは、エフェクトを初期化するときに使用する、ステート情報の特定のインスタンスです。詳細については、「D3DXEFFECTINSTANCE」を参照してください。
  • NumMaterials
    pMaterials 配列に含まれる D3DXMATERIAL 構造体の数です。
  • Format
    .x ファイルを保存するときのファイル フォーマットと保存オプションの組み合わせです。「D3DX X ファイルの定数」を参照してください。

戻り値

成功すると、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