使用threeLayer自定义maptalks的天空盒
_threeLayerSky = new ThreeLayer('threeLayerSky', {
forceRenderOnMoving: true,
forceRenderOnRotating: true,
animation: true
} as any);
_threeLayerSky.prepareToDraw = (gl, scene, camera) => {
const urls = [
require('../assets/images/posx.jpg'),
require('../assets/images/negx.jpg'),
require('../assets/images/posy.jpg'),
require('../assets/images/negy.jpg'),
require('../assets/images/posz.jpg'),
require('../assets/images/negz.jpg')
]
const cubeLoader = new THREE.CubeTextureLoader();
scene.rotation.x = -Math.PI / 2;
scene.background = cubeLoader.load(urls)
}
_threeLayerSky.addTo(map)