次の方法で共有


ID3DXBaseMesh::UpdateSemantics

このメソッドを使用すると、ユーザーは頂点バッファーのデータ レイアウトを変更せずに、メッシュの宣言を変更できます。古い宣言と新しい宣言のフォーマットが同じ頂点サイズである場合にのみ、呼び出しが有効となります。

HRESULT 
UpdateSemantics(
  D3DVERTEXELEMENT9 Declaration[MAX_FVF_DECL_SIZE]
);

パラメータ

  • Declaration
    メッシュの頂点の頂点フォーマットを記述する D3DVERTEXELEMENT9 要素の配列です。この宣言子配列の上限は MAX_FVF_DECL_SIZE です。

戻り値

メソッドが成功した場合は、D3D_OK を返します。失敗した場合は、D3DERR_INVALIDCALL を返します。

解説 

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

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

要件

ヘッダー: D3DX9Mesh.h 宣言

ライブラリ: D3dx9.lib 内容

関連項目

ID3DXBaseMesh::CloneMeshFVF, D3DXDeclaratorFromFVF