IDirect3DRMTexture3

Microsoft DirectX version 6.0は、IDirect3DRMTexture3インターフェイスを導入している。IDirect3DRMTexture3は、それが置換する旧のIDirect3DRMTexture2IDirect3DRMTextureインターフェイスを拡張し、テクスチャ管理に対するより洗練された制御を可能にする。テキスチャ管理の概要は、「テクスチャ」を参照すること。Direct3D保持モードインターフェイスの履歴については、「インターフェイスの変更点」を参照すること。

IDirect3DRMTexture3は、テクスチャの変更リージョンを指定可能にすることで、Changedメソッドの機能を拡張する。また、これは、テクスチャ管理キャッシングメソッドのGetCacheOptionsSetCacheOptionsも提供する。IDirect3DRMTexture3が提供するその他の新しいメソッドとして、GetSurfaceSetDownSampleCallback、および<SetValidationCallbackがある。

旧のIDirect3DRMTexture2が追加し、IDirect3DRMTexture3もサポートする以前の新しいメソッドには、InitFromResource2が含まれる。これは、DLLおよび現在の実行ファイルを除く実行可能プログラムからリソースをロードできるようにする。InitFromImageメソッドは、メモリ中のイメージからテクスチャを生成する。このメソッドは、IDirect3DRM3::CreateTextureメソッドと同等である。GenerateMIPMapメソッドは、ソースイメージからミップマップを作り出す。

テクスチャを作成するときに不必要な遅延を避けるため、再利用するテクスチャは保持しておいて、必要になるたびに作成しなくてすむようにする。最適なパフォーマンスを得るには、使用するデバイスのサポートするテクスチャサーフェスフォーマットを使う。これにより、テクスチャを作成してから変更するときに、手間のかかるフォーマット変換を回避することができる。

IDirect3DRM3::LoadTextureによりテクスチャコールバック関数にロードされたテクスチャへの参照を保持する方法を示す例は、IDirect3DRM3::LoadTextureの注意を参照すること。

IDirect3DRMTexture3インターフェイスのメソッドは、以下のグループにまとめることができる。
GetColors
SetColors
デカール GetDecalOrigin
GetDecalScale
GetDecalSize
GetDecalTransparency
GetDecalTransparentColor
SetDecalOrigin
SetDecalScale
SetDecalSize
SetDecalTransparency
SetDecalTransparentColor
イメージ GetImage
初期化 InitFromFile
InitFromImage
InitFromResource2
InitFromSurface
ミップマップ生成 GenerateMIPMap
その他 GetCacheOptions
GetSurface
SetCacheOptions
SetDownsampleCallback
SetValidationCallback
レンダラ通知 Changed
シェーディング GetShades
SetShades

すべてのCOMインターフェイスと同様、IDirect3DRMTexture3インターフェイスはIUnknownインターフェイスメソッドを継承する。IUnknownインターフェイスは、以下の3つのメソッドをサポートする。
AddRef
QueryInterface
Release

さらに、IDirect3DRMTexture3インターフェイスは、IDirect3DRMObjectインターフェイスから以下のメソッドを継承する。
AddDestroyCallback
Clone
DeleteDestroyCallback
GetAppData
GetClassName
GetName
SetAppData
SetName

IDirect3DRMTexture3オブジェクトを作成するには、IDirect3DRM3::CreateTextureまたはIDirect3DRM3::CreateTextureFromSurfaceを呼び出す。

IDirect3DRMTexture3::Changed

IDirect3DRMTexture3

アプリケーションでテクスチャのどのリージョンを変更するかを指定可能にする。

構文

HRESULT Changed(
  DWORD dwFlags,
  DWORD dwcRects,
  LPRECT pRects);

パラメータ

dwFlags
次のフラグを定義する。
D3DRMTEXTURE_CHANGEDPIXELS
ピクセル値が変更されたことを示す。
D3DRMTEXTURE_CHANGEDPALETTE
パレットが変更されたことを示す。
D3DRMTEXTURE_INVALIDATEONLY
テクスチャリージョンが無効になったが、アプリケーションで更新する必要がないことを示す。これは、Direct3D保持モードがテクスチャをレンダリングする前に、アプリケーションを呼び出し、1次ソースを更新する。このコールバックはSetValidationCallbackによってセットされる。
dwcRects
pRectsがポイントするRECT構造体の数。この値が0で、dwFlagsにD3DRMTEXTURE_CHANGEDPIXELSまたはD3DRMTEXTURE_INVALIDATEONLYが含まれる場合、テクスチャ全体が更新される。
pRects
変更されたピクセルのリージョンを記述するRECT構造体の配列。dwFlagsにD3DRMTEXTURE_CHANGEDPIXELSまたはD3DRMTEXTURE_INVALIDATEONLYが含まれる場合、pRectsパラメータだけが有効である。

戻り値

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

注意

このメソッドは、DirectX version 6.0とともに導入されたこのメソッドは、旧のIDirect3DRMTexture::Changedメソッドを置換する。この旧のメソッドには、アプリケーションがテクスチャのピクセルまたはパレットを変更したかどうかを示す2つのブールパラメータがある。

IDirect3DRMTexture3::GenerateMIPMap

IDirect3DRMTexture3

単一のイメージソースからミップマップを生成する。

構文

HRESULT GenerateMIPMap(
  DWORD dwFlags
  );

パラメータ

dwFlags
0をセットする必要がある。

戻り値

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

注意

このメソッドは、テクスチャの作成後はいつでも呼び出すことができる。このメソッドは、レベル間の双一次フィルタリングによってソースイメージのミップマップを1×1の解像度まで生成できる。ミップマップが生成されると、マップはいつでも使用可能で、IDirect3DRMTexture3::Changedを呼び出して、更新することができる。ミップマッピングを使用する場合には、IDirect3DRMDevice3::SetTextureQualityを使用して、テクスチャのクオリティをD3DRMTEXTURE_MIPNEAREST、D3DRMTEXTURE_MIPLINEAR、D3DRMTEXTURE_LINEARMIPNEAREST、またはD3DRMTEXTURE_LINEARMIPLINEARに変更することを忘れてはならない。特別のミップマップレベルは、テクスチャクオリティがミップマッピング型を含み、かつハードウェアデバイスがミップマッピングをサポートしない限り、ハードウェアデバイスのビデオメモリに格納されない。

参照

ミップマップ

IDirect3DRMTexture3::GetCacheOptions

IDirect3DRMTexture3

テクスチャメモリが制限されている場合に、テクスチャ管理で現在のテクスチャをどのように処理するかに関する情報を取得する。

構文

HRESULT GetCacheOptions(
  LPLONG lplImportance,
  LPDWORD lpdwFlags);

パラメータ

lplImportance
テクスチャの相対的な重要度を示す符号付きの値。デフォルトは0である。値が大きければ、重要度が高いことを示す。この値を使用して、テクスチャメモリが制限されている場合にどのテクスチャを最後にダウンサンプルするかを計算する。
lpdwFlags
現在のテクスチャに関するテクスチャ管理システムを制御するフラグ。現在定義されているフラグは、次の通りである。
D3DRMTEXTURE_FORCERESIDENT
テクスチャを(ハードウェアシナリオ中の) ビデオメモリに保持することを示す。
D3DRMTEXTURE_STATIC
テクスチャが変わらないことを示す。アプリケーションは、決してChangedメソッドを使用しない。
D3DRMTEXTURE_DOWNSAMPLEPOINT
テクスチャのダウンサンプル時にポイントフィルタリングを使用することを示す。
D3DRMTEXTURE_DOWNSAMPLEBILINEAR
テクスチャのダウンサンプル時に双一次フィルタリングを使用することを示す。
D3DRMTEXTURE_DOWNSAMPLEREDUCEDEPTH
テクスチャのダウンサンプル時にピクセル深度が減少することを示す。
D3DRMTEXTURE_DOWNSAMPLENONE
テクスチャを決してダウンサンプルしないことを示す。

戻り値

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

注意

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

IDirect3DRMTexture3::GetColors

IDirect3DRMTexture3

Direct3DRMTexture2オブジェクトをレンダリングするために使用する色の最大数を取得する。

構文

DWORD GetColors( );

戻り値

色の数を返す。

注意

このメソッドは、Direct3DRMTexture2オブジェクトが作成された元のイメージ中の色の数ではなく、Direct3DRMTexture2オブジェクトが量子化された色の数を返す。したがって、戻り値の色の数は通常、IDirect3DRM3::SetDefaultTextureColorsメソッドを呼び出して設定した色に一致する。ただし、IDirect3DRMTexture3::SetColorsメソッドを明示的に呼び出してDirect3DRMTexture2オブジェクトの色を変更した場合は、そうはならない。

参照

IDirect3DRMTexture3::SetColors

IDirect3DRMTexture3::GetDecalOrigin

IDirect3DRMTexture3

デカールの現在の原点を取得する。

構文

HRESULT GetDecalOrigin(
  LONG *lplX,
  LONG *lplY
  );

パラメータ

lplX, lplY
メソッドが戻ったとき、デカールの原点がセットされる変数のアドレス。

戻り値

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

参照

IDirect3DRMTexture3::SetDecalOrigin

IDirect3DRMTexture3::GetDecalScale

IDirect3DRMTexture3

指定のデカールのスケーリングプロパティを取得する。

構文

DWORD GetDecalScale( );

戻り値

成功すればスケーリングプロパティ、失敗すれば-1を返す。

参照

IDirect3DRMTexture3::SetDecalScale

IDirect3DRMTexture3::GetDecalSize

IDirect3DRMTexture3

デカールのサイズを取得する。

構文

HRESULT GetDecalSize(
  D3DVALUE *lprvWidth,
  D3DVALUE *lprvHeight
  );

パラメータ

lprvWidth, lprvHeight
メソッドが戻ったとき、デカールの幅と高さがセットされる変数のアドレス。

戻り値

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

参照

IDirect3DRMTexture3::SetDecalSize

IDirect3DRMTexture3::GetDecalTransparency

IDirect3DRMTexture3

デカールの透明プロパティを取得する。

構文

BOOL GetDecalTransparency( );

戻り値

デカールが透明な色を持っているとTRUE、そうでないとFALSEを返す。

参照

IDirect3DRMTexture3::SetDecalTransparency

IDirect3DRMTexture3::GetDecalTransparentColor

IDirect3DRMTexture3

デカールの透明な色を取得する。

構文

D3DCOLOR GetDecalTransparentColor( );

戻り値

透明な色の値を返す。

参照

IDirect3DRMTexture3::SetDecalTransparentColor

IDirect3DRMTexture3::GetImage

IDirect3DRMTexture3

テクスチャを作成したときに使用したイメージのアドレスを返す。

構文

D3DRMIMAGE *GetImage( );

戻り値

現在のDirect3DRMTexture2オブジェクトを生成するのに使用したD3DRMIMAGE構造体のアドレスを返す。

IDirect3DRMTexture3::GetShades

IDirect3DRMTexture3

レンダリング時にテクスチャ中の各色に対して使用されるシェード数を返す。

構文

DWORD GetShades( );

戻り値

シェード数を返す。

参照

IDirect3DRMTexture3::SetShades

IDirect3DRMTexture3::GetSurface

IDirect3DRMTexture3

テクスチャを作成するために使用したDirectDrawサーフェスを取得する。これは、CreateTextureFromSurfaceまたはInitFromSurfaceがテクスチャの作成に使用された場合にのみ、サーフェスを取得する。

構文

HRESULT GetSurface(
  DWORD dwFlags,
  LPDIRECTDRAWSURFACE *lplpDDS);

パラメータ

dwFlags
フラグ値。0でなければならない。
lplpDDS
対応するDirectDrawサーフェスのインターフェイスへのポインタを受け取る変数のアドレス。インターフェイスの参照カウントは、インターフェイスが呼び出し元に渡される前にインクリメントされることに注意すること。

戻り値

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

注意

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

IDirect3DRMTexture3::InitFromFile

IDirect3DRMTexture3

指定ファイル中の情報を使用してDirect3DRMTexture2オブジェクトを初期化する。

構文

HRESULT InitFromFile(
  LPCSTR filename
  );

パラメータ

filename
テクスチャの初期化情報を取得するファイルを指定する文字列。

戻り値

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

注意

IDirect3DRM3::CreateTextureまたはIDirect3DRM3::CreateTextureFromSurfaceメソッドを使用して、初期化するDirect3DRMTexture2オブジェクトを作成しておかなければならない。

参照

IDirect3DRMTexture3::InitFromImage, IDirect3DRMTexture3::InitFromResource2, IDirect3DRMTexture3::InitFromSurface

IDirect3DRMTexture3::InitFromImage

IDirect3DRMTexture3

メモリ中のイメージからテクスチャを初期化する。

構文

HRESULT InitFromImage(
  LPD3DRMIMAGE lpImage
  );

パラメータ

lpImage
テクスチャのソースを記述するD3DRMIMAGE構造体のアドレス。

戻り値

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

注意

IDirect3DRM3::CreateTextureまたはIDirect3DRM3::CreateTextureFromSurfaceメソッドを使用して、初期化するIDirect3DRMTexture3オブジェクトを作成しておかなければならない。

参照

IDirect3DRMTexture3::InitFromFile, IDirect3DRMTexture3::InitFromResource2, IDirect3DRMTexture3::InitFromSurface

IDirect3DRMTexture3::InitFromResource2

IDirect3DRMTexture3

指定のリソースからDirect3DRMTexture2オブジェクトを初期化する。

構文

HRESULT InitFromResource2(
  HModule hModule,
  LPCTSTR strName,
  LPCTSTR strType
  );

パラメータ

hModule
指定のリソースのハンドル。
strName
テクスチャを初期化するのに使用するリソース名。
strType
テクスチャを初期化するのに使用するリソースのタイプ名。テクスチャは、RT_BITMAおよびRT_RCDATAリソースタイプまたはユーザ定義タイプの中に格納できる。リソースタイプがユーザ定義されていれば、このメソッドは、そのリソースモジュールハンドル、リソース名、およびリソースタイプをFindResource Win32 APIに渡す。

戻り値

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

注意

IDirect3DRM3::CreateTextureまたはIDirect3DRM3::CreateTextureFromSurfaceメソッドを使用して、初期化するIDirect3DRMTexture3オブジェクトを作成しておかなければならない。

参照

IDirect3DRMTexture3::InitFromFile, IDirect3DRMTexture3::InitFromImage, IDirect3DRMTexture3::InitFromSurface

IDirect3DRMTexture3::InitFromSurface

IDirect3DRMTexture3

指定したDirectDrawサーフェスからのデータを使用して、Direct3DRMTexture2オブジェクトを初期化する。このメソッドは、IDirect3DRMTexture3::InitFromSurfaceと同じ機能を実行する。

構文

HRESULT InitFromSurface(
  LPDIRECTDRAWSURFACE lpDDS
  );

パラメータ

lpDDS
初期化情報を取得するDirectDrawサーフェスのアドレス。

戻り値

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

注意

DirectDrawサーフェスからテクスチャを作成する場合、サーフェスをシステムメモリ中に作成するのが最善である。これによって、ソフトウェアデバイスの最適なパフォーマンスが可能になり、Direct3D保持モードがハードウェアデバイスに対してビデオメモリの使用をより効率的に管理できるようになる。

参照

IDirect3DRMTexture3::InitFromFile, IDirect3DRMTexture3::InitFromImage, IDirect3DRMTexture3::InitFromResource2

IDirect3DRMTexture3::SetCacheOptions

IDirect3DRMTexture3

テクスチャメモリが制限されている場合に、テクスチャ管理でこのテクスチャをどのように処理するかに関する情報を提供する。

構文

HRESULT SetCacheOptions(
  LONG lImportance,
  DWORD dwFlags);

パラメータ

lImportance
テクスチャの相対的な重要度を示す符号付きの値。デフォルトは0である。値が大きければ、重要度が高いことを示す。この値を使用して、テクスチャメモリが制限されている場合にどのテクスチャを最後にダウンサンプルするかを計算する。
dwFlags
現在のテクスチャに関するテクスチャ管理システムを制御するフラグ。現在定義されているフラグは、次の通りである。
D3DRMTEXTURE_FORCERESIDENT
テクスチャを(ハードウェアシナリオ中の) ビデオメモリに保持することを示す。
D3DRMTEXTURE_STATIC
テクスチャが変わらないことを示す。
D3DRMTEXTURE_DOWNSAMPLEPOINT
テクスチャのダウンサンプル時にポイントフィルタリングを使用することを示す。
D3DRMTEXTURE_DOWNSAMPLEBILINEAR
テクスチャのダウンサンプル時に双一次フィルタリングを使用することを示す。
D3DRMTEXTURE_DOWNSAMPLEREDUCEDEPTH
テクスチャのダウンサンプル時にピクセル深度が減少することを示す。下位ビットの深度が使用可能でなければ、テクスチャのサイズが減少する。
D3DRMTEXTURE_DOWNSAMPLENONE
テクスチャを決してダウンサンプルしないことを示す。デフォルト値はD3DRMTEXTURE_DOWNSAMPLEPOINTである。

戻り値

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

注意

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

IDirect3DRMTexture3::SetColors

IDirect3DRMTexture3

Direct3DRMTexture2オブジェクトをレンダリングするのに使用する色の最大数を設定する。このメソッドは、ランプカラーモデルに限り必要となる。

構文

HRESULT SetColors(
  DWORD ulColors
  );

パラメータ

ulColors
色の数。デフォルト値は8である。

戻り値

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

参照

IDirect3DRMTexture3::GetColors

IDirect3DRMTexture3::SetDecalOrigin

IDirect3DRMTexture3

デカールの左上からのオフセットとしてデカールの原点を設定する。

構文

HRESULT SetDecalOrigin(
  LONG lX,
  LONG lY
  );

パラメータ

lX, lY
デカール座標でのデカールの新しい原点。デフォルトの原点は[0, 0]である。

戻り値

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

注意

デカール原点は、レンダリング時にそのフレームの位置にマップされる。たとえば、十字のデカールの原点は、デカールの中点に設定され、下向きの矢印の原点は、底辺にそった中点に設定される。

このメソッドは、Direct3DRMTextureInterpolatorオブジェクトにデカール原点を追加するためにも使用する。

参照

IDirect3DRMTexture3::GetDecalOrigin

IDirect3DRMTexture3::SetDecalScale

IDirect3DRMTexture3

デカールのスケーリングプロパティを設定する。

構文

HRESULT SetDecalScale(
  DWORD dwScale
  );

パラメータ

dwScale
このパラメータがTRUEの場合、デカールをスケーリングする場合に深度が考慮され、デカールがシーンのフレーム上のテクスチャである場合、ビューアから遠くにあれば小さく、ビューアの近くにあれば大きくスケーリングされる。FALSEの場合、深度情報は無視され、デカールはビューアからの遠近にかかわらず同じサイズとなる。デフォルト値はTRUEである。

戻り値

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

参照

IDirect3DRMTexture3::GetDecalScale

IDirect3DRMTexture3::SetDecalSize

IDirect3DRMTexture3

シーン中のデカールの深度に従って、デカールがスケーリングされる場合に、使用されるデカールのサイズを設定する。

構文

HRESULT SetDecalSize(
  D3DVALUE rvWidth,
  D3DVALUE rvHeight
  );

パラメータ

rvWidth, rvHeight
モデル座標における、デカールの新しい幅と高さ。デフォルトサイズは、[1, 1]である。

戻り値

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

注意

このメソッドは、Direct3DRMTextureInterpolatorオブジェクトにデカールサイズキーを追加するためにも使用する。

参照

IDirect3DRMTexture3::GetDecalSize

IDirect3DRMTexture3::SetDecalTransparency

IDirect3DRMTexture3

デカールの透明プロパティを設定する。

構文

HRESULT SetDecalTransparency(
  BOOL bTransp
  );

パラメータ

bTransp
このパラメータがTRUEの場合、デカールは透明の色を持つ。FALSEの場合、不透明の色を持つ。デフォルト値はFALSEである。

戻り値

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

参照

IDirect3DRMTexture3::GetDecalTransparency

IDirect3DRMTexture3::SetDecalTransparentColor

IDirect3DRMTexture3

デカールの透明な色を設定する。

構文

HRESULT SetDecalTransparentColor(
  D3DCOLOR rcTransp
  );

パラメータ

rcTransp
新しい透明な色。デフォルトの透明な色は黒である。

戻り値

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

注意

このメソッドは、Direct3DRMTextureInterpolatorオブジェクトにデカールの透明色キーを追加するためにも使用する。

参照

IDirect3DRMTexture3::GetDecalTransparentColor

IDirect3DRMTexture3::SetDownsampleCallback

IDirect3DRMTexture3

テクスチャのダウンサンプル時に、D3DRM 組み込みメソッドを使用するのではなく、テクスチャ管理が使用するコールバックを指定する。コールバックがすでに指定されている場合、新しいコールバックは旧のものを置換する。コールバックがNULLならば、現在のコールバックは削除される。

構文

typedef HRESULT (CDECL *D3DRMDOWNSAMPLECALLBACK)
  (LPVOID pArg,
  LPDIRECTDRAWSURFACE pDDSSrc,
  LPDIRECTDRAWSURFACE pDDSDst);

HRESULT SetDownsampleCallback(
  LPDIRECT3DRMTEXTURE3 lpDirect3DRMTexture,
  D3DRMDOWNSAMPLECALLBACK pCallback,
  LPVOID pArg);

パラメータ

pCallback
ダウンサンプリングを実行するために呼び出されるコールバック関数へのポインタ。値NULLは、現在のコールバックが削除されることを示す。
pArg
呼び出し時にコールバックに渡されるアプリケーション固有のデータ。

戻り値

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

注意

ダウンサンプリングは、ビデオメモリがオーバーロードになり、テクスチャサーフェスのサイズを削減する必要があるときに実行される。Direct3D保持モードでは、DirectDrawブロック転送や双一次フィルタリングなどの、テクスチャサイズを削減するデフォルトのメソッドが提供されるが、ユーザは独自のメソッドを持つコールバックを定義してテクスチャサイズをスケールダウンすることができる。

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

参照

D3DRMDOWNSAMPLECALLBACK

IDirect3DRMTexture3::SetShades

IDirect3DRMTexture3

レンダリング時に、Direct3DRMTexture2オブジェクトの各色に対して使用するシェードの最大数を設定する。このメソッドは、ランプカラーモデルに限り必要となる。

構文

HRESULT SetShades(
  DWORD ulShades
  );

パラメータ

ulShades
新しいシェード数。この値は、2の累乗でなければならない。デフォルト値は16である。

戻り値

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

参照

IDirect3DRMTexture3::GetShades

IDirect3DRMTexture3::SetValidationCallback

IDirect3DRMTexture3

1次ソーステクスチャの妥当性検査と更新を行うコールバック関数をセットする。

構文

typedef HRESULT (CDECL *D3DRMVALIDATIONCALLBACK)
  (LPVOID pArg,
  DWORD dwFlags,
  DWORD dwcRects,
  LPRECT pRects);

HRESULT SetValidationCallback(
  LPDIRECT3DRMTEXTURE3 lpDirect3DRMTexture,
  D3DRMVALIDATIONCALLBACK pCallback,
  LPVOID pArg);

パラメータ

pCallback
妥当性検査を実行するために呼び出されるコールバック関数へのポインタ。コールバックがすでに指定されている場合、新しいコールバックは旧のものを置換する。NULLが指定されていれば、現在のコールバックは削除される。
pArg
呼び出し時にコールバックに渡されるアプリケーション固有のデータ。

戻り値

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

注意

Direct3D保持モードは、変更済みであるが更新されていないことを意味する無効のマークが付けられたテクスチャリージョンを、更新する必要があるときに、テクスチャ妥当性検査コールバックを呼び出す。アプリケーションは1次ソースを更新し、戻る。

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

参照

D3DRMVALIDATIONCALLBACK


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