import Light from '../Light';
/**
* @constructor clay.light.Sphere
* @extends {clay.Light}
*/
var SphereLight = Light.extend(
/** @lends clay.light.Sphere# */
{
/**
* @type {number}
*/
range: 100,
/**
* @type {number}
*/
radius: 5
}, {
type: 'SPHERE_LIGHT',
uniformTemplates: {
sphereLightPosition: {
type: '3f',
value: function(instance) {
return instance.getWorldPosition().array;
}
},
sphereLightRange: {
type: '1f',
value: function(instance) {
return instance.range;
}
},
sphereLightRadius: {
type: '1f',
value: function(instance) {
return instance.radius;
}
},
sphereLightColor: {
type: '3f',
value: function(instance) {
var color = instance.color;
var intensity = instance.intensity;
return [color[0]*intensity, color[1]*intensity, color[2]*intensity];
}
}
}
});
export default SphereLight;