提问人:Lauenborg 提问时间:2/1/2023 最后编辑:Lauenborg 更新时间:11/16/2023 访问量:1023
导入 GLSL 文件抛出错误 - Vite 项目
Importing a GLSL file throws an error - Vite project
问:
所以我目前正在玩三个.js并使用 vite 来设置文档。 我创建了一个单独的 fragment.glsl,因此我不必在着色器材料中编写代码。但是在控制台中,我收到以下错误:
Uncaught SyntaxError: Unexpected token '{' (at fragment.glsl?import:1:13)
fragment.glsl 文件如下所示:
void main() {
gl_FragColor = vec4(1., 0., 0., 1.);
};
我尝试使用以下命令从我的 /shaders/ 文件夹导入文件:
import fragment from './shaders/fragment.glsl'
当我在着色器材质中使用它时,它希望它运行代码:
this.material = new THREE.ShaderMaterial({
fragmentShader: fragment,
uniforms: {
progress: {
type: 'f',
value: 0,
},
side: THREE.DoubleSide,
},
})
但我得到的只是控制台中的错误。我似乎无法弄清楚我做错了什么。没想到导入文件会这么麻烦。有谁看到我做错了什么?
答:
1赞
flppv
2/15/2023
#1
我遇到了同样的问题,并通过安装 vite-plugin-glsl 解决了它。它有一个简单的设置说明,安装后导入问题就解决了。
1赞
Aadil Khan
11/7/2023
#2
首先安装一个包:
npm i vite-plugin-glsl --save-dev
然后在以下方面做一些更改:vite.config.js
import glsl from 'vite-plugin-glsl';
import { defineConfig } from 'vite';
在顶部添加,然后在导出默认值中添加另一件事:vite.config.js
plugins: [ glsl() ]
然后在依赖项部分添加以下内容:package.json
"vite-plugin-glsl": "^1.1.2"
最后,你的工作完全完成了
评论