前回の第19回
点光源の数と色を変える
まず,
function createLights() {
// light = createPointLight(0xFFFFFF, 1, 600, 100, 2);
light = createPointLight(0x00FF00, 0.5, 600, 100, 10);
return new StaticLightPicker([light]);
}
function createPointLight(color, ambient, fallOff, radius, specular) {
}
第17回表1 LightBaseクラスのプロパティ
LightBaseクラスのプロパティ | 値と機能 |
---|---|
ambient | 環境光の強さを示す0以上1以下の数値 |
ambientColor | 環境光のカラー値を示す0から0xFFFFFFまでの整数 |
color | 光のカラー値 |
diffuse | 光の拡散する強さを示す0以上の数値 |
fallOff | 光が届く距離の最大値 |
radius | 光が届く距離の最小値 |
specular | 光の反射する強さを示す0以上の数値 |
PointLightオブジェクトとその色は,
// var light;
var greenLight;
var blueLight;
function createLights() {
// light = createPointLight(0xFFFFFF, 1, 600, 100, 2);
greenLight = createPointLight(0x00FF00, 1, 600, 100, 2);
blueLight = createPointLight(0x0000FF, 0, 600, 100, 2);
// return new StaticLightPicker([light]);
return new StaticLightPicker([greenLight, blueLight]);
}
2つの点光源をアニメーションさせる
点光源はせっかく2つつくったのだから,
アニメーションを描画する関数
var angle = 0;
function render(deltaTime) {
var radius = 600;
cameraController.panAngle += 0.2;
angle += Math.PI / 180;
var lightX = Math.sin(angle) * radius;
var lightZ = Math.cos(angle) * radius;
greenLight.x = lightX;
greenLight.z = lightZ;
blueLight.x = -lightX;
blueLight.z = -lightZ;
view.render();
}