three 加载器 (二)

CubeTextureLoader

加载CubeTexture的一个类。 内部使用ImageLoader来加载文件。

var scene = new THREE.Scene(); 
scene.background = new THREE.CubeTextureLoader() 
  .setPath( 'textures/cubeMaps/' ) 
  .load( [ 'px.png', 'nx.png', 'py.png', 'ny.png', 'pz.png', 'nz.png' ] );

构造函数

CubeTextureLoader( manager : LoadingManager )

manager — 加载器使用的loadingManager。默认为THREE.DefaultLoadingManager.

创建一个新的CubeTextureLoader.

属性

# .crossOrigin : String

如果设置了,在开始加载前, 将为图片分配 crossOrigin 属性,其值为 crossOrigin, 默认为"anonymous"。

# .manager : LoadingManager

加载器正在使用的loadingManager。默认为DefaultLoadingManager。

# .path : String

加载加载的文件的基本路径。 请参考.setPath。默认为undefined.

方法

# .load ( urls : String, onLoad : Function, onProgress : Function, onError : Function ) : null

urls — 数组长度为6的图像数组,数组内容为URL,每一个URL用于CubeTexture的每一侧。 这些URL将被指定顺序: pos-x, neg-x, pos-y, neg-y, pos-z, neg-z. 数组内容也可以为 Data URIs.
请注意,一般来说,在立方体贴图坐标系中,当查找positive-z轴时,positive-x表示右侧 - 换句话说,此坐标系使用左手坐标系。 由于three.js使用右手坐标系, 环境贴图将在three.js进行pos-x和neg-x进行交互.
onLoad — 加载完成时将调用。回调参数是已被加载的texture.
onProgress — 将在加载过程中进行调用。参数为XMLHttpRequest实例, 其中包含 total 和 loaded 字节。
onError — 在加载错误时被调用。

从URL中进行加载,并将被加载的texture传递给onLoad。

# .setCrossOrigin ( value : String ) : null

设置.crossOrigin的属性。

# .setPath ( path : String ) : FileLoader

设置加载文件的基本路径或URL。当加载同一目录中的许多模型,此方法将很有用。

DataTextureLoader

用于加载二进制文件格式的(rgbe, hdr, ...)的抽象类。 内部使用FileLoader来加载文件, 和创建一个新的 DataTexture.

构造函数

DataTextureLoader( manager : LoadingManager )

manager — 加载器所使用的loadingManager。 默认为THREE.DefaultLoadingManager.

创建一个新的DataTextureLoader.

属性

# .manager : LoadingManager

加载器正在使用的loadingManager。默认为DefaultLoadingManager.

方法

# .load ( url : String, onLoad : Function, onProgress : Function, onError : Function ) : null

url — 文件的URL或者路径,也可以为 Data URI.
onLoad — 加载完成时将调用。回调参数为将要加载的纹理。
onProgress — 将在加载过程中进行调用。参数为XMLHttpRequest实例,实例包含total和loaded字节。
onError —在加载错误时被调用。

从URL中进行加载,并将被加载的纹理传递给onLoad。

  • 11
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Three.js 是一个强大的 JavaScript 库,用于在网页上创建和显示 3D 图形。Three.js 提供了许多加载,用于加载不同类型的 3D 模型和纹理。 以下是一些常见的 Three.js 加载: 1. OBJLoader:用于加载 Wavefront OBJ 格式的模型文件。 2. FBXLoader:用于加载 Autodesk 的 FBX 格式的模型文件。 3. GLTFLoader:用于加载 glTF(GL Transmission Format)格式的模型文件,这是一种比较新的开放标准的 3D 文件格式。 4. DRACOLoader:用于加载经过 Draco 压缩的 glTF 文件,以减小文件大小并提高加载性能。 5. TextureLoader:用于加载图片纹理。 这些加载可以通过引入 Three.js 库后直接使用。例如,要使用 OBJLoader,可以按照以下步骤操作: 1. 引入 Three.js 库: ```html <script src="https://cdn.jsdelivr.net/npm/three@0.132.2/build/three.js"></script> ``` 2. 创建场景、相机和渲染等必要的 Three.js 元素。 3. 创建 OBJLoader 实例并设置所需的参数: ```javascript const loader = new THREE.OBJLoader(); ``` 4. 使用 loader 的 `load` 方法加载模型文件,并在回调函数中处理加载完成后的逻辑: ```javascript loader.load( 'path/to/model.obj', function (object) { // 模型加载完成后的处理逻辑 scene.add(object); }, function (xhr) { // 模型加载进度的回调函数 console.log((xhr.loaded / xhr.total) * 100 + '% loaded'); }, function (error) { // 模型加载失败时的处理逻辑 console.error('An error happened', error); } ); ``` 通过类似的步骤,你可以使用其他加载加载不同类型的模型或纹理文件。根据你要加载的文件类型选择相应的加载,并查阅 Three.js 文档以了解更多详细信息和用法示例。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值