Ninja Library - セルスプライト関数

njSetCellSpriteMaterial

セルスプライトのマテリアルの変更

書式

void njSetCellSpriteMaterial( cst_diff, off_diff, cst_spec, off_spec, mode)
NJS_ARGB *cst_diff
NJS_ARGB *off_diff
NJS_ARGB *cst_spec
NJS_ARGB *off_spec
Int mode

引数

cst_diff   コンスタントディフューズ値ARGB(0.f - 1.f)
off_diff   オフセットディフューズ値ARGB(0.f - 1.f)
cst_spec   コンスタントスペキュラ−値RGB(0.f - 1.f)
off_spec   オフセットスペキュラ−値RGB(0.f - 1.f)
mode   0 モードクリア
   NJD_CELLSPRITE_CONSTANT_DIFF
   NJD_CELLSPRITE_OFFSET_DIFF
   NJD_CELLSPRITE_OFFSET_DIFF_MULTI
   NJD_CELLSPRITE_CONSTANT_SPEC
   NJD_CELLSPRITE_OFFSET_SPEC
   NJD_CELLSPRITE_OFFSET_SPEC_MULTI

戻り値

なし

解説

すべてのセルのディフューズ、スペキュラ−カラーを変更することができます。 ディフューズカラーを変更する場合は、NJD_CELLSPRITE_CONSTANT_DIFFを設定し 変更する値をcst_diffに設定します。 はじめのディフューズカラーに加算し変更する場合は、NJD_CELLSPRITE_OFFSET_DIFFを 設定し変更する値をoff_diffに設定します。 はじめのディフューズカラーに積算し変更する場合は、NJD_CELLSPRITE_OFFSET_DIFF_MULTIを 設定し変更する値をoff_diffに設定します。 スペキュラ−カラーを変更する場合は、NJD_CELLSPRITE_CONSTANT_SPECを設定し 変更する値をcst_specに設定します。 はじめのスペキュラ−カラーに加算し変更する場合は、NJD_CELLSPRITE_OFFSET_SPECを 設定し変更する値をoff_specに設定します。 はじめのスペキュラ−カラーに加算し変更する場合は、NJD_CELLSPRITE_OFFSET_SPEC_MULTIを 設定し変更する値をoff_specに設定します。

NJD_CELLSPRITE_OFFSET_DIFF、NJD_CELLSPRITE_OFFSET_DIFF_MULTIはどちらか一方、 NJD_CELLSPRITE_OFFSET_SPEC、NJD_CELLSPRITE_OFFSET_SPEC_MULTIはどちらか一方しか 設定できません。 設定を止める場合はmodeに0を設定してください。設定しないcdiff,odiff,cspec,ospecは NULLを設定します。設定した値は、変更されるまですべてのセルストリーム セルスプライトで有効になります。


用例


/* セルスプライト全体にアルファを掛けます*/
NJS_ARGB diff;

diff.a = 0.2f;
diff.r = 1.f;
diff.g = 1.f;
diff.b = 1.f;

njSetCellSpriteMaterial( &diff, NULL, NULL, NULL, NJD_CELLSPRITE_CONSTANT_DIFF);
njSetCellSpriteAttr( 0xFFFF, NJD_FCA_AL );

njDrawCellStream2D(&streamlist, &motion, step,NULL);

njSetCellSpriteMaterial( NULL, NULL, NULL, NULL, 0);
njSetCellSpriteAttr( 0xFFFF,0);


参照

njSetCellSpriteAttr() セルのアトリビュートの変更

njSetCellSpriteMaterial
COPYRIGHT © SEGA ENTERPRISES, LTD., 1998-2000