.HDR 文件类型的 RGBE 加载程序出现“不支持的类型错误”

cur*_*mer 5 three.js hdr vue.js vite

我使用 ThreeJS,特别是 RGBE 加载器来加载我的 HDR 文件。https://github.com/mrdoob/ Three.js/blob/master/examples/jsm/loaders/RGBELoader.js

这工作正常,直到最近升级,现在当我尝试将 HDR 文件与加载程序一起使用时,我收到以下消息:当我尝试运行代码时,我在运行时收到错误:THREE.RGBELoader: unsupported type: 1009

在此输入图像描述

RGBELoader 似乎无法解析该文件——通过谷歌搜索这个特定错误,这似乎通常是由于人们错误地导入了 HDR。

为了进一步参考,这是我的资产加载代码:

// (prev code in my asset loader to get the path to the asset, and url of my .hdr file)

if (type == 'hdr') {
    new RGBELoader()
        .setDataType(THREE.UnsignedByteType)
        .setPath( _BASE_ASSET_URL )
        .load( url, function ( loadedItem ) {

            scope.assets[name] = loadedItem

    })
}
Run Code Online (Sandbox Code Playgroud)

Mug*_*n87 8

.setDataType(THREE.UnsignedByteType)

自 以来r136,该常量THREE.UnsignedByteType不再是有效的数据类型THREE.RGBELoader。请使用THREE.HalfFloatType(默认)或THREE.FloatType.

  • 如果您能接受这篇文章作为答案,那就太好了。 (2认同)