商域无疆 (http://blog.csdn.net/omni360/)
本文遵循“署名-非商业用途-保持一致”创作公用协议
转载请保留此句:商域无疆 - 本博客专注于 敏捷开发及移动和物联设备研究:数据可视化、GOLANG、Html5、WEBGL、THREE.JS,否则,出自本博客的文章拒绝转载或再转载,谢谢合作。
俺也是刚开始学,好多地儿肯定不对还请见谅.
以下代码是THREE.JS 源码文件中Light/Light.js文件的注释.
更多更新在 : https://github.com/omni360/three.js.sourcecode
/**
* @author mrdoob / http://mrdoob.com/
* @author alteredq / http://alteredqualia.com/
*/
/*
///Light是场景中由灯光对象的抽象基类,通过原型的方式继承自Object3D,在WebGL的三维空间中,存在点光源PointLight和聚光灯SpotLight两种类型,还有作为点光源的一种特例,
///平行光DirectionLight,和环境光AmbientLight.在3D场景中,基本上是这几种光源的组合,创建各种各样的效果.
*/
///<summary>Light</summary>
///<param name ="color" type="THREE.Color">颜色值</param>
///<returns type="Light">返回灯光对象</returns>
THREE.Light = function ( color ) {
THREE.Object3D.call( this ); //调用Object3D对象的call方法,将原本属于Object3D的方法交给当前对象Light来使用.
this.color = new THREE.Color( color ); //设置灯光的颜色属性
};
/*************************************************
****下面是Light对象的方法属性定义,继承自Object3D
**************************************************/
THREE.Light.prototype = Object.create( THREE.Object3D.prototype ); //Light对象从THREE.Objec3D的原型继承所有属性方法
/*clone方法
///clone方法克隆Camera对象,
*/
///<summary>clone</summary>
///<param name ="light" type="Light">Light对象</param>
///<returns type="Light">返回克隆的Light对象</returns>
THREE.Light.prototype.clone = function ( light ) {
if ( light === undefined ) light = new THREE.Light();
THREE.Object3D.prototype.clone.call( this, light ); //调用THREE.Object3D.Clone(light)方法,克隆灯光对象
light.color.copy( this.color ); //复制灯光的颜色属性
return light; //返回灯光的克隆对象
};
商域无疆 (http://blog.csdn.net/omni360/)
本文遵循“署名-非商业用途-保持一致”创作公用协议
转载请保留此句:商域无疆 - 本博客专注于 敏捷开发及移动和物联设备研究:数据可视化、GOLANG、Html5、WEBGL、THREE.JS,否则,出自本博客的文章拒绝转载或再转载,谢谢合作。
以下代码是THREE.JS 源码文件中Light/Light.js文件的注释.