##### 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