THREE.js(四):解决WebGPURender 在加载大模型时失败的问题。

4 阅读1分钟

问题:three.js v180版本,在使用webgpurender加载模型时,默认是256M的限制,如果模型过大会加载失败。

解决办法:

  1. 先获取当前适配器的配置,然后读取limits下的maxBufferSize,这里默认给了2G
async getAdapterLimits() {
    const adapter = await navigator.gpu.requestAdapter();
    const limits = adapter?.limits.maxBufferSize;
    return limits || 2147483648;
}
  1. 设置下webgpurender中的requiredLimits就行
new WebGPURenderer({
      requiredLimits: {
        maxBufferSize: limits,
      },
});