次の方法で共有


ID3DXBaseMesh::CloneMeshFVF メソッド

ID3DXBaseMesh::CloneMeshFVF メソッド

柔軟な頂点フォーマット (FVF) コードを使用してメッシュのコピーを作成する。

構文

HRESULT CloneMeshFVF(      
    DWORD Options,
    DWORD FVF,
    LPDIRECT3DDEVICE9 pDevice,
    LPD3DXMESH *ppCloneMesh
);

パラメータ

  • Options
    [in] メッシュの作成オプションを指定する 1 つ以上の D3DXMESH フラグの組み合わせ。
  • FVF
    [in] 柔軟な頂点フォーマット フラグの組み合わせ。出力メッシュに含まれる頂点の頂点フォーマットを指定する。コードの値については、「D3DFVF」を参照すること。
  • pDevice
    [in] IDirect3DDevice9 インターフェイスへのポインタ。メッシュに関連付けられているデバイス オブジェクトを表す。
  • ppCloneMesh
    [out, retval] コピーされたメッシュを表す ID3DXMesh インターフェイスへのポインタ。

戻り値

成功した場合は、D3D_OK を返す。

失敗した場合は、次のいずれかの値を返す。

D3DERR_INVALIDCALL メソッドの呼び出しが無効である。たとえば、メソッドのパラメータに無効な値が設定されている場合などである。
E_OUTOFMEMORY Microsoft® Direct3D® が呼び出しを完了するための十分なメモリを割り当てることができなかった。

注意

頂点のデータ レイアウトを再フォーマットおよび変更するには、ID3DXBaseMesh::CloneMeshFVF を使う。これを行うには、新しいメッシュ オブジェクトを作成する。たとえば、これまで存在していなかった法線、テクスチャ座標、色、重みなどのためにスペースを追加する場合に使う。

ID3DXBaseMesh::UpdateSemantics は、頂点バッファのレイアウトを変更することなく、頂点宣言を異なったセマンティクス情報で更新する。このメソッドは、頂点バッファの内容は変更しない。たとえば、3D テクスチャ座標のラベルを従法線や接線に変更する場合や、その逆に変更する場合に使う。

参照

ID3DXBaseMesh::CloneMeshID3DXBaseMesh::GetFVFID3DXMesh::GetFVFID3DXPMesh::GetFVFD3DXFVFFromDeclarator