Kamui2 Library - ユーティリティ関連関数

kmuCreateTwiddledTextureEx

Kamuiビットマップ形式からTwiddled形式への変換

書式

KMSTATUS kmuCreateTwiddledTextureEx( pOutputTexture, pInputTexture, bAutoMipMap, bDither, USize, VSize, nTextureType, pWorkarea )
PKMDWORD pOutputTexture
PKMDWORD pInputTexture
KMBOOLEAN bAutoMipMap
KMBOOLEAN bDither
KMINT32 USize
KMINT32 VSize
KMTEXTURETYPE nTextureType
PKMDWORD pWorkarea

引数

pOutputTexture   (出力)変換後のテクスチャデータを書き込むメインメモリ上のアドレス
pInputTexture   (入力)KM_TEXTURE_BMP形式の入力テクスチャを示すポインタ
bAutoMipMap   (入力)自動的にMIPMAPを生成するかどうかのフラグ
bDither   (入力)ディザをかけるかどうかのフラグ
USize   (入力)テクスチャの幅
VSize   (入力)テクスチャの高さ
nTextureType   (入力)変換後のテクスチャのピクセルフォーマット
pWorkarea   (入力)入力データと同じサイズのワークエリアの先頭アドレス

戻り値

KMSTATUS_SUCCESS   成功
KMSTATUS_INVALID_TEXTURE_TYPE   無効なテクスチャタイプを指定した
KMSTATUS_INVALID_ADDRESS   横長のテクスチャ変換時、pWorkareaがNULLである。

解説

メインメモリ上のKM_TEXTURE_BMP形式(ABGR8888)のテクスチャを、Twiddled / Twiddled Mipmap 形式のテクスチャに変換します。

引数pOutputTextureは、変換後のテクスチャデータを書き込むメインメモリ上のアドレスです。

引数pInputTextureは、KM_TEXTURE_BMP形式の入力テクスチャを示すポインタです。

引数bAutoMipMapは、自動的にMIPMAPを生成するかどうかを指定します。

TRUEを指定した場合には自動的にMIPMAPを生成します(出力はKM_TEXTURE_TWIDDLED_MM形式になります)。 FALSEを指定した場合にはMIPMAP生成は行いません(出力はKM_TEXTURE_TWIDDLED形式になります)。 引数USize、VSizeに異なった値を指定するとミップマップは生成されません。 その場合このフラグは無視されます。

引数bDitherは、ディザをかけるかどうかを指定します。TRUEを指定した場合はディザをかけます。

引数USizeとVSizeには、テクスチャの幅、高さをテクセル数で指定します。下記の中のいずれかを指定します。

 定義   意味 
 KM_MAPSIZE_8   8x8 テクセル 
 KM_MAPSIZE_16   16x16 テクセル 
 KM_MAPSIZE_32   32x32 テクセル 
 KM_MAPSIZE_64   64x64 テクセル 
 KM_MAPSIZE_128   128x128 テクセル 
 KM_MAPSIZE_256   256x256 テクセル 
 KM_MAPSIZE_512   512x512 テクセル 
 KM_MAPSIZE_1024   1024x1024 テクセル 

引数USizeとVSizeに異なった値を指定すると、Twiddled-Rectangle形式のテクスチャを生成します。 なお、この場合はミップマップは生成されません。引数bAutoMipMapフラグは無視されます。

引数nTextureTypeは、変換後のテクスチャのピクセルフォーマットを指定します。 下記の中のいずれかを指定します。

 定義   意味 
 KM_TEXTURE_ARGB1555   ARGB-1555形式 
 KM_TEXTURE_RGB565   RGB-565形式 
 KM_TEXTURE_ARGB4444   ARGB-4444形式 

引数pWorkareaは、入力データと同じサイズのワークエリアを準備し、その先頭アドレスを指定します。 横長のテクスチャをTwiddled-Rectangle形式に変換する場合に必要です。 その他の場合にはワークエリアは必要ありません。その場合にはNULLを指定してください。


備考

ミップマップ、ディザの指定を行ったときは、入力テクスチャデータの内容は失われます。

kmuCreateTwiddledTextureEx
COPYRIGHT © NEC Corporation / © SEGA ENTERPRISES, LTD., 1998-2000