opengl GLSL简单着色器导致奇怪的编译错误

3pvhb19x  于 2022-12-29  发布在  其他
关注(0)|答案(1)|浏览(263)

我有一个非常简单的着色器:

#version 460

layout (location = 0) in vec3 inPos;
layout (location = 0) out vec3 outPos;

void main() {
    gl_Position = vec4(inPos.x, inPos.y, inPos.z, 1.0);
    outPos = inPos;
}

并使用以下命令编译着色器:

glslangValidator -V -G -o triangle.vert.spv triangle.vert

编译器转了3个错误:

error : #version: ES shaders for SPIR-V require version 310 or higher
error : Source\Shaders\triangle.vert:1: '€' : unexpected token
error : Source\Shaders\triangle.vert:1: '' : compilation terminated

看起来编译器在阅读代码的第一行时遇到了麻烦。我非常确定我没有在这行中包含欧元符号,并且语法应该是正确的。
我该怎么解决这个问题?

daolsyd0

daolsyd01#

我正在使用Jetbrains Rider,对我来说:文件编码-〉删除BOM解决了该问题

相关问题