ライト
MascotCapsule V3では、環境光と平行光源の2種類が用意されています。ライトを使用するには、Lightオブジェクトを作成し、Effect3Dオブジェクトの第1引数に作成したLightオブジェクトを設定します。Lightオブジェクト設定後の環境光・平行光源の設定についての説明を以下に示します。
目次
1. 環境光( Ambient Light )
環境光はワールド内を一様に照らすライトです。MascotCapsule V3では、白色光のみが用意されています。環境光を使用する場合は、Lightクラス内のsetAmbIntensity( int intensity ) で明るさ0~4096の範囲で設定してください。4096が元のテクスチャの色になります。環境光を使用しないようにする場合は明るさを0に設定してください。
2. 平行光源( Direction Light )
平行光源はワールド内を一定の方向から照らすライトです。MascotCapsule V3では白色光源のみが用意されています。
平行光源を使用する場合は、Lightクラス内のsetDirection( Vector3D direction ) でライトの方向を、setDirIntensity( int intensity ) で明るさを0~4096の範囲内で設定してください。平行光源を使用しないようにする場合は明るさを0に設定してください。
また、環境光と平行光源は組み合わせて使うことが可能ですが、その明るさは元のテクスチャの色(4096)までです。環境光と平行光源を合わせた明るさが4096を超えた場合は、最も明るい部分が4096になるように調整されます。
![]() |
![]() |
![]() |
![]() |
| 環境光+平行光源 | 環境光のみ | 平行光源のみ | 光源無し |
3.サンプルコード
このマニュアルのサンプルコードのライトの設定をしている部分を以下に示します。サンプルではソフトキーで平行光源、環境光のオン・オフの切り替えができます。また、方向キーで平行光源の向きを変えることが可能です。
private Light light = new Light( lightDir, dirIntensity, ambIntensity );
// Effect3D オブジェクト作成
effect = new Effect3D( light, Effect3D.NORMAL_SHADING, true, null );
/**
* commandAction() メソッド
* ソフトキー押下時処理(描画パラメータ変更)
*/
public void commandAction( Command c, Displayable d ){
/* ライト切り替え */
if( label.equals( commandLabels[0] ) ){
}





