Three.js实现旋转星空的效果(精灵)
Three.js是一款开源的主流3D绘图JS引擎(名字Three就是3D的含义),用来简化WebGL编程,也提供了非常多的3D显示功能来实现很多炫酷的实例。 本文利用Three.js的精灵系统实现旋转星空的效果,最终效果如下图:

实现过程
1、 声明变量,详细代码如下图,具体用途说明都已经有备注。

3、 新建物体(initObject),这一块比较复杂,详细分析如下: 1.先新建3D对象(group)和设置精灵缺省材质属性(material),里面要注意属性sizeAttenuation,设置为true的时候,星星会随距离而发生尺寸衰减(远小、近大),其它属性下图都有详细备注; 2.然后把新建的1000个精灵平面(sprite)(每个精灵都放大5倍,且随机不同位置)添加到group中。

5、 为了360度观察整个星空的场景,可以新建轨道控制器,轨道控制器可以利用鼠标控制场景的旋转、平移、缩放,详细代码如下图。
