Easy3D For HSP のライトの使用例


Easy3D For HSP ver1.0.0.4 以降から、複数のライトを扱えるようになりました。
種類は、平行光源、ポイントライト、スポットライトの3種類です。
それぞれ、ライトの色も設定可能です。

いつものように?、オリジナルの計算式で、多少、いんちきしてみました。
ですが、ポイントライトや、スポットライトは、平行光源に比べると、処理が少し重いです。

以下は、それぞれのライトの使用例です。


平行光源の色に、(0, 255, 0) を指定した例です。




赤いポイントライトを、空中に設定した例です。



緑のスポットライトを、セットした例です。



もちろん、複数のライトの併用も、可能です。
ポイントライトと、スポットライトを併用した例です。


注意点
スポットライトや、ポイントライトは、照らされる側のポリゴンが、ある程度細かくないと
その効果を、実感できないと思いますので、注意してください。

また、RokDeBone2上で、”明るいところの色”と”暗いところの色”を同じ色に設定してしまうと、
ライトの色を変化させても、物体の色は、変化しませんので、ご注意ください。
(例えば、古い、猫妹のsig ファイルは、スカートの白の部分の、明るいところと暗いところが同じ色になっています。)


スクリプトでの使用法
まず、E3DCreateLightという命令で、ライトを生成します。
このときに、LightIDという、ライトを識別するIDが取得できます。
各種ライトの設定時には、必ず、このLightIDを使用します。

使用したいライトの数だけ、E3DCreateLightをすることになります。

E3DCreateLightで作成したライトを、平行光源として使用したい場合には、
E3DSetDirectionalLightという命令を使います。
LightIDと、ライトの向き、ライトの色を指定します。

ポイントライトとして使用したい場合は、
E3DSetPointLightという命令を使います。
LightIDと、ライトの位置、ライトの向き、ライトの届く距離、ライトの色を指定します。

スポットライトとして使用したい場合は、
E3DSetSpotLightという命令を使います。
LightIDと、ライトの位置、ライトの向き、ライトの届く距離、ライトの照らす角度、ライトの色
を指定します。

各関数の詳しい引数は、Easy3D For HSPのページの表をご覧ください。


Easy3D For HSP のページに戻る