在 3D 场景中,环境映射是提升真实感的关键技术之一,而立方体贴图(CubeMap)则是实现环境映射的核心工具。本文将通过一个完整示例,带你掌握 Three.js 中立方体贴图的加载、使用与原理。
什么是立方体贴图?
立方体贴图是由 6 张正方形纹理组成的特殊纹理,这 6 张纹理分别对应一个立方体的 6 个面(右、左、上、下、后、前)。在 3D 渲染中,它常被用来模拟环境反射(如金属、水面)或作为场景背景(天空盒)。

完整示例代码解析
下面是一个可直接运行的立方体贴图示例,我们将创建一个带环境反射的立方体和球体,并解释每一行代码的作用。
import * as THREE from '../extends/three.module.js';
function createCubeMapScene(scene) {
// 1. 创建立方体贴图加载器
const cubeTextureLoader = new THREE.CubeTextureLoader();
// 2. 定义立方体贴图的6个面(顺序必须严格遵守!)
const cubeMapUrls = [
'assets/cubemap/number/px.png', // 正右(+X)
'assets/cubemap/number/nx.png', // 正左(-X)
'assets/cubemap/number/py.png', // 正上(+Y)
'assets/cubemap/number/ny.png', // 正下(-Y)
'assets/cubemap/number/pz.png', // 正后(+Z)
'assets/cubemap/number/nz.pn

完全指南:从加载到应用&spm=1001.2101.3001.5002&articleId=149507385&d=1&t=3&u=5f6ff20ced52495ea52d0216caa3ad46)
2038

被折叠的 条评论
为什么被折叠?



