You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Three.js中OutputPass模块无法从CDN作为ES6模块导入求助

问题分析与解决

你遇到的404错误核心原因是:Three.js 0.136.0版本中不存在OutputPass这个后处理模块,你参考的示例基于Three.js的master分支(最新开发版),而该模块是在0.136.0之后的版本才被添加到postprocessing目录下的。

解决方法

方法1:升级Three.js版本

将import map中的Three.js版本号替换为包含OutputPass的版本(比如0.148.0及以上),修改后的import map如下:

<script async src="https://unpkg.com/es-module-shims@1.8.0/dist/es-module-shims.js"></script>
<script type="importmap">
    {
        "imports": {
            "three": "https://cdn.skypack.dev/three@0.148.0",
            "three/addons/": "https://cdn.skypack.dev/three@0.148.0/examples/jsm/"
        }
    }
</script>

升级后即可正常导入OutputPass。

方法2:在0.136.0版本中替代OutputPass功能

如果必须保留0.136.0版本,你可以直接省略OutputPass——早期版本的EffectComposer默认会将结果渲染到屏幕;或者用ShaderPass结合CopyShader实现类似的输出功能,示例代码如下:

import { ShaderPass } from 'three/addons/postprocessing/ShaderPass';
import { CopyShader } from 'three/addons/shaders/CopyShader';

// 用CopyShader实现类似OutputPass的输出功能
const outputPass = new ShaderPass(CopyShader);
composer.addPass(outputPass);

内容的提问来源于stack exchange,提问作者Mr. Developerdude

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 07:40:04