IDirect3DRMMeshBuilder3メソッドN〜Z

この項は、IDirect3DRMMeshBuilder3インターフェイスのメソッドのうち、メソッド名がNからZのものをとりあげるリファレンスページである。

IDirect3DRMMeshBuilder3::Optimize

IDirect3DRMMeshBuilder3

現在のデバイスに対してMeshBuilderオブジェクトを最適化する。この操作は高価であることに注意すること。

構文

HRESULT Optimize
(DWORD dwFlags);

パラメータ

dwFlags
0でなければならない。

戻り値

次の値のうち1つを返す。
 
DDERR_INVALIDOBJECT
DDERR_INVALIDPARAMS
DD_OK

注意

このメソッドは、DirectX version 6.0とともに導入された。

IDirect3DRMMeshBuilder3::ReserveSpace

IDirect3DRMMeshBuilder3

指定された頂点、法線、および面に対してDirect3DRMMeshBuilder3オブジェクト内のスペースを予約する。これにより、システムがメモリを、より効率的に使用できるようになる。

構文

HRESULT ReserveSpace(
  DWORD vertexCount,
  DWORD normalCount,
  DWORD faceCount
  );

パラメータ

vertexCount, normalCount, faceCount
スペースを割り当てる頂点、法線、および面の数。

戻り値

成功すればD3DRM_OK、失敗すればエラーを返す。エラーのリストについては、「Direct3D保持モードの戻り値」を参照すること。

IDirect3DRMMeshBuilder3::Save

IDirect3DRMMeshBuilder3

Direct3DRMMeshBuilder3オブジェクトを保存する。

構文

HRESULT Save(
  const char * lpFilename,
  D3DRMXOFFORMAT d3drmXOFFormat,
  D3DRMSAVEOPTIONS d3drmSOContents
  );

パラメータ

lpFilename
作成するファイルの名前を指定するアドレス。このファイルのファイル名拡張子は、.xでなければならない。
d3drmXOFFormat
D3DRMXOFFORMAT列挙型のD3DRMXOF_TEXT値。
d3drmSOContents
保存オプションを指定するD3DRMSAVEOPTIONS型の値。

戻り値

成功すればD3DRM_OK、失敗すればエラーを返す。エラーのリストについては、「Direct3D保持モードの戻り値」を参照すること。

IDirect3DRMMeshBuilder3::Scale

IDirect3DRMMeshBuilder3

指定のスケーリングファクタを使用してモデル座標でx軸、y軸、z軸に平行にDirect3DRMMeshBuilder3オブジェクトをスケーリングする。

構文

HRESULT Scale(
  D3DVALUE sx,
  D3DVALUE sy,
  D3DVALUE sz
  );

パラメータ

sx, sy, sz
x軸、y軸、z軸にそって適用されるスケーリングファクタ。

戻り値

成功すればD3DRM_OK、失敗すればエラーを返す。エラーのリストについては、「Direct3D保持モードの戻り値」を参照すること。

IDirect3DRMMeshBuilder3::SetColor

IDirect3DRMMeshBuilder3

Direct3DRMMeshBuilder3オブジェクトのすべての面に指定の色を設定する。

構文

HRESULT SetColor(
  D3DCOLOR color
  );

パラメータ

color
面の色。赤、緑、青の色要素だけでなく、アルファ要素も必ずセットする。そうしないと、オブジェクトが可視にならないことがある。RGBA_MAKE DirectXマクロによってこれらの値を指定することができる。

戻り値

成功すればD3DRM_OK、失敗すればエラーを返す。エラーのリストについては、「Direct3D保持モードの戻り値」を参照すること。

IDirect3DRMMeshBuilder3::SetColorRGB

IDirect3DRMMeshBuilder3

Direct3DRMMeshBuilder3オブジェクトのすべての面に指定の色を設定する。

構文

HRESULT SetColorRGB(
  D3DVALUE red,
  D3DVALUE green,
  D3DVALUE blue
  );

パラメータ

red, green, blue
色の赤、緑、青の各成分。

戻り値

成功すればD3DRM_OK、失敗すればエラーを返す。エラーのリストについては、「Direct3D保持モードの戻り値」を参照すること。

IDirect3DRMMeshBuilder3::SetColorSource

IDirect3DRMMeshBuilder3

Direct3DRMMeshBuilder3オブジェクトの色ソースを設定する。

構文

HRESULT SetColorSource(
  D3DRMCOLORSOURCE source
  );

パラメータ

source
使用する新しい色ソース指定するD3DRMCOLORSOURCE列挙型のメンバ。

戻り値

成功すればD3DRM_OK、失敗すればエラーを返す。エラーのリストについては、「Direct3D保持モードの戻り値」を参照すること。

参照

IDirect3DRMMeshBuilder3::GetColorSource

IDirect3DRMMeshBuilder3::SetMaterial

IDirect3DRMMeshBuilder3

Direct3DRMMeshBuilder3オブジェクトのすべての面のマテリアルを設定する。

構文

HRESULT SetMaterial(
  LPDIRECT3DRMMATERIAL2 lpIDirect3DRMmaterial
  );

パラメータ

lpIDirect3DRMmaterial
Direct3DRMMeshBuilder3オブジェクトのIDirect3DRMMaterial2インターフェイスのアドレス。

戻り値

成功すればD3DRM_OK、失敗すればエラーを返す。エラーのリストについては、「Direct3D保持モードの戻り値」を参照すること。

IDirect3DRMMeshBuilder3::SetNormal

IDirect3DRMMeshBuilder3

Direct3DRMMeshBuilder3オブジェクトの指定されている頂点の法線ベクトルを設定する。

構文

HRESULT SetNormal(
  DWORD index,
  D3DVALUE x,
  D3DVALUE y,
  D3DVALUE z
  );

パラメータ

index
セットする法線のインデックス。
x, y, z
指定の法線に割り当てるベクトルのx、y、zの各要素。

戻り値

成功すればD3DRM_OK、失敗すればエラーを返す。エラーのリストについては、「Direct3D保持モードの戻り値」を参照すること。

IDirect3DRMMeshBuilder3::SetNormals

IDirect3DRMMeshBuilder3

Direct3DRMMeshBuilder3オブジェクト中に以前に定義した法線を設定する。

構文

HRESULT SetNormals(
  DWORD dwFirst,
  DWORD dwCount,
  LPD3DVECTOR lpdvVector);

パラメータ

dwFirst
修正する最初の法線のインデックス。
dwCount
修正する法線の数。
lpdvVector
新しい法線データを記述するベクトルの配列。

戻り値

次の値のうち1つを返す。
 
D3DRMERR_OUTOFRANGE
DDERR_INVALIDOBJECT
DDERR_INVALIDPARAMS
DD_OK

注意

このメソッドは、DirectX version 6.0とともに導入された。

参照

GetNormals

IDirect3DRMMeshBuilder3::SetPerspective

IDirect3DRMMeshBuilder3

Direct3DRMMeshBuilder3オブジェクトに対するパースペクティブ補正テクスチャマッピングをイネーブルまたはディセーブルにする。

構文

HRESULT SetPerspective(
  BOOL perspective
  );

パラメータ

perspective
メッシュをパースペクティブ補正でテクスチャマップする必要があればTRUEを、そうでなければFALSEを指定する。

戻り値

成功すればD3DRM_OK、失敗すればエラーを返す。エラーのリストについては、「Direct3D保持モードの戻り値」を参照すること。

IDirect3DRMMeshBuilder3::SetQuality

IDirect3DRMMeshBuilder3

Direct3DRMMeshBuilder3オブジェクトに対するレンダリングクオリティを設定する。

構文

HRESULT SetQuality(
  D3DRMRENDERQUALITY quality
  );

パラメータ

quality
使用する新しいレンダリングクオリティを指定するD3DRMRENDERQUALITY列挙型のメンバ。

戻り値

成功すればD3DRM_OK、失敗すればエラーを返す。エラーのリストについては、「Direct3D保持モードの戻り値」を参照すること。

注意

オブジェクトクオリティには、3つのコンポーネントがある。すなわち、シェーディングモード (フラットまたはグーロー。フォンは実装されておらず、デフォルトでグーローシェーディングになる)、照明タイプ (オンまたはオフ) および塗りつぶしモード (ポイント、ワイヤフレームまたはソリッド) である。

デバイスのクオリティを設定するには、IDirect3DRMDevice3::SetQualityを用いる。デフォルトで、デバイスクオリティはD3DRMRENDER_FLAT (フラットシェーディング、照明オンおよびソリッド塗りつぶし) である。

Direct3DRMMeshBuilder3オブジェクトのクオリティを設定するには、SetQualityメソッドを用いる。デフォルトで、Direct3DRMMeshBuilder3オブジェクトのクオリティはD3DRMRENDER_GOURAUD (グーローシェーディング、照明オンおよびソリッド塗りつぶし) である。

ヒント: グーローシェーディングは、詳細レベルを頻繁にまたは素早く変更するプログレッシブメッシュオブジェクトについて、フォンシェーディングよりもよいパフォーマンスを得られる。

Direct3D保持モードは、デバイスやオブジェクトの個々のコンポーネントに対する現在の設定の中で最も低位のクオリティで、オブジェクトにレンダリングを行う。たとえば、オブジェクトの現在のクオリティ設定がD3DRMRENDER_GOURAUDで、デバイスがD3DRMRENDER_FLATであると、オブジェクトはフラットシェーディング、ソリッド塗りつぶし、および照明オンでレンダリングされる。

オブジェクトの現在のクオリティ設定がD3DRMSHADE_GOURAUD|D3DRMLIGHT_OFF|D3DRMFILL_WIREFRAMEで、デバイスのクオリティ設定がD3DRMSHADE_FLAT|D3DRMLIGHT_ON|D3DRMFILL_POINTであると、オブジェクトはフラットシェーディング、照明オフ、およびポイント塗りつぶしモードでレンダリングされる。

これらのルールは、Direct3DRMMeshBuilder3オブジェクトおよびDirect3DRMProgressiveMeshオブジェクトに適用される。しかし、Direct3DRMMeshオブジェクトはこれらのルールに従わない。メッシュオブジェクトはデバイスのクオリティ設定を無視し、グループクオリティ設定を用いる(デフォルトでD3DRMRENDER_GOURAUD)。

参照

IDirect3DRMMeshBuilder3::GetQuality

IDirect3DRMMeshBuilder3::SetTexture

IDirect3DRMMeshBuilder3

Direct3DRMMeshBuilder3オブジェクトのすべての面のテクスチャを設定する。

構文

HRESULT SetTexture(
  LPDIRECT3DRMTEXTURE3 lpD3DRMTexture
  );

パラメータ

lpD3DRMTexture
必要なDirect3DRMTextureオブジェクトのアドレス。

戻り値

成功すればD3DRM_OK、失敗すればエラーを返す。エラーのリストについては、「Direct3D保持モードの戻り値」を参照すること。

IDirect3DRMMeshBuilder3::SetTextureCoordinates

IDirect3DRMMeshBuilder3

Direct3DRMMeshBuilder3オブジェクトの指定されている頂点のテクスチャ座標を設定する。

構文

HRESULT SetTextureCoordinates(
  DWORD index,
  D3DVALUE u,
  D3DVALUE v
  );

パラメータ

index
セットする頂点のインデックス。
u, v
指定のメッシュ頂点に割り当てるテクスチャ座標。

戻り値

成功すればD3DRM_OK、失敗すればエラーを返す。エラーのリストについては、「Direct3D保持モードの戻り値」を参照すること。

参照

IDirect3DRMMeshBuilder3::GetTextureCoordinates

IDirect3DRMMeshBuilder3::SetTextureTopology

IDirect3DRMMeshBuilder3

Direct3DRMMeshBuilder3オブジェクトのテクスチャトポロジーを設定する。

構文

HRESULT SetTextureTopology(
  BOOL cylU,
  BOOL cylV
  );

パラメータ

cylU, cylV
円筒形トポロジーを、それぞれu次元およびv次元でテクスチャに持たせたい場合、この2つのパラメータの、少なくとも一方にTRUEを、そうでない場合には、FALSEを指定する。

戻り値

成功すればD3DRM_OK、失敗すればエラーを返す。エラーのリストについては、「Direct3D保持モードの戻り値」を参照すること。

注意

テクスチャトポロジーフラグ、cylUcylVは Direct3D直接モードレンダリング状態D3DRENDERSTATE_WRAPUD3DRENDERSTATE_WRAPVの設定を制御する。ラッピングフラグがTRUEのとき、ラスタライザは、それが2つのテクスチャ座標間で短いほうのパスであれば、テクスチャの1つの辺から反対側の辺に横断 (トロイダル マッピング) する。1つの辺に沿って0.1から0.9の範囲のv座標を持つ三角形があるとする。WRAPVがFALSEであれば、テクスチャのほぼ全長が三角形に沿ってレンダリングされる。WRAPVがTRUEであれば、テクスチャの上部と下部のスライバがレンダリングされる。さらに、ラッピングフラグがTRUEのとき、テクスチャ座標の一部分だけが1.0より大きい値を持つとみなされるため、ラップがTRUEのときテクスチャは面に沿ってタイル化されないことになる。

ラッピング動作の制御は、テクスチャ座標の正しい解釈にとって必要である。単一のテクスチャが多くの面に沿ってラップされている場合、cylUcylVパラメータをTRUEにセットする。モデルが面当たり1つのテクスチャしか持たないか、または1より大きいテクスチャ座標を使用してテクスチャの複数のコピーを単一の面に沿ってタイル化する場合、cylUcylVをFALSEにセットする。

いくつかのインターフェイスは、SetTextureTopologyメソッドをエクスポーズする。IDirect3DRMMeshBuilder3::SetTextureTopologyは、すべての要素面上のトポロジーを更新し、IDirect3DRMFace2::SetTextureTopologyによる設定をオーバーライドする。デフォルトでは、IDirect3DRMFrame3::SetTextureは、デフォルトのマテリアルモードがD3DRMMATERIAL_FROMMESHであるため、メッシュを読み込む。マテリアルモードがD3DRMMATERIAL_FROMMESHでない場合、IDirect3DRMFrame3::SetTextureIDirect3DRMMeshBuilder3::SetTextureTopologyによる設定をオーバーライドする。

IDirect3DRMMeshBuilder3::SetVertex

IDirect3DRMMeshBuilder3

Direct3DRMMeshBuilder3オブジェクトの指定されている頂点の位置を設定する。

構文

HRESULT SetVertex(
  DWORD index,
  D3DVALUE x,
  D3DVALUE y,
  D3DVALUE z
  );

パラメータ

index
セットする頂点のインデックス。
x, y, z
指定の頂点に割り当てる位置のx、y、zの各要素。

戻り値

成功すればD3DRM_OK、失敗すればエラーを返す。エラーのリストについては、「Direct3D保持モードの戻り値」を参照すること。

IDirect3DRMMeshBuilder3::SetVertexColor

IDirect3DRMMeshBuilder3

Direct3DRMMeshBuilder3オブジェクトの指定されている頂点の色を設定する。

構文

HRESULT SetVertexColor(
  DWORD index,
  D3DCOLOR color
  );

パラメータ

index
セットする頂点のインデックス。
color
指定の頂点に割り当てる色。

戻り値

成功すればD3DRM_OK、失敗すればエラーを返す。エラーのリストについては、「Direct3D保持モードの戻り値」を参照すること。

参照

IDirect3DRMMeshBuilder3::GetVertexColor

IDirect3DRMMeshBuilder3::SetVertexColorRGB

IDirect3DRMMeshBuilder3

Direct3DRMMeshBuilder3オブジェクトの指定されている頂点の色を設定する。

構文

HRESULT SetVertexColorRGB(
  DWORD index,
  D3DVALUE red,
  D3DVALUE green,
  D3DVALUE blue
  );

パラメータ

index
セットする頂点のインデックス。
red, green, blue
指定の頂点に割り当てる色の赤、緑、青の各成分。

戻り値

成功すればD3DRM_OK、失敗すればエラーを返す。エラーのリストについては、「Direct3D保持モードの戻り値」を参照すること。

IDirect3DRMMeshBuilder3::SetVertices

IDirect3DRMMeshBuilder3

Direct3DRMMeshBuilder3オブジェクト中に以前に定義した頂点を設定する。

構文

HRESULT SetVertices(
  DWORD dwFirst,
  DWORD dwCount,
  LPD3DVECTOR lpdvVector);

パラメータ

dwFirst
修正する最初の頂点のインデックス。
dwCount
修正する頂点の数。
lpdvVector
新しい頂点データを記述するベクトルの配列。

戻り値

次の値のうち1つを返す。
 
D3DRMERR_OUTOFRANGE
DDERR_INVALIDOBJECT
DDERR_INVALIDPARAMS
DD_OK

注意

このメソッドは、DirectX version 6.0とともに導入された。

参照

GetVertices

IDirect3DRMMeshBuilder3::Translate

IDirect3DRMMeshBuilder3

Direct3DRMMeshBuilder3オブジェクトの頂点の位置に指定のオフセットを加算する。

構文

HRESULT Translate(
  D3DVALUE tx,
  D3DVALUE ty,
  D3DVALUE tz
  );

パラメータ

tx, ty, tz
各頂点位置のx座標、y座標、z座標に追加されるオフセット。

戻り値

成功すればD3DRM_OK、失敗すればエラーを返す。エラーのリストについては、「Direct3D保持モードの戻り値」を参照すること。


トップに戻る トップに戻る
© 1999 Microsoft and/or its suppliers. All rights reserved. Terms of Use.