Skip to content

添加蓝天白云

loading

实际上就是给场景添加一个 Cube 背景图

ts
//添加蓝天白云
const skybox = new THREE.CubeTextureLoader().setPath("demo/skybox/").load(["px.png", "nx.png", "py.png", "ny.png", "pz.png", "nz.png"]);
viewer.scene.background = skybox;

TIP

添加背景图的方法十分简单,效果和效率也能满足大部分用户需求。如果需要更好的效果,可以给地图套一个 Box 模型,调整其纹理实现特效,比如做云层流动动画、动态调整色彩等。也可以直接使用 threejs 自带的 sky 类( https://threejs.org/examples/#webgl_shaders_sky ),该类通过着色器模拟阳光大气等效果,它是基于物理模型的,能真实模拟折射散射反射过程。

TIP

大气散射效果,包括云层、雾霾、光线等对场景的真实程度影响较大,游戏中通常会使用体积云、体渲染等技术,能达到以假乱真的效果,但这些特效对计算机资源消耗很大。如果你对这方面有需求,可以一起探讨。


Released under the MIT License.