typedef struct { Int lsrc; Float iamb; Float idif; Float ispc; Float nrang; Float frang; void* func; Angle iang; Angle oang; NJS_ARGB argb; } NJS_LIGHT_ATTR, *NJS_LIGHT_ATTR_PTR;
lsrc | 光源の種類 |
iamb | 環境光の強度 |
idif | ディフューズ光の強度 |
ispc | スペキュラの強度 |
nrang | 光源の距離減衰のはじまる距離 |
frang | 光源の効果をカットする距離 |
func | ユーザー指定のライト |
iang | スペキュラまたはスポットライトが最大強度になる角度 |
oang | スペキュラまたはスポットライトの効果がなくなる角度 |
argb | 光源色 |
光源の種類を指定するメンバlsrcは次の値をもちます。
0x01 | NJD_AMBIENT |
0x02 | NJD_DIR_LIGHT |
0x03 | NJD_LAMBERT_DIR |
0x04 | NJD_POINT_LIGHT |
0x05 | NJD_LAMBERT_POINT |
0x08 | NJD_SPOT_LIGHT |
0x10 | NJD_SPEC_DIR |
0x13 | NJD_PHONG_DIR |
0x20 | NJD_SPEC_POINT |
0x25 | NJD_PHONG_POINT |
0x40 | NJD_USER_LIGHT |
0x80 | NJD_SIMPLE_LIGHT |
0xC0 | NJD_BLOCK_LIGHT |