gpt4 book ai didi

ios - 在 IOS 上移动到 ES 3.0 后顶点着色器未编译

转载 作者:行者123 更新时间:2023-11-29 00:29:40 26 4
gpt4 key购买 nike

将所有着色器移至 ES3.0 后,我的 compileShader 在第一行出错。

#version 300

它给出了一个语法错误:错误:0:2:'':语法错误:#version

如果它是错误的版本,那么我会得到不受支持的版本,而不是语法错误。所以这令人困惑,为什么它无法识别语法。我检查了传递给编译着色器的源代码,它显然以#version 300\n\n\n 开头。

设置上下文后,我的版本是“OpenGL ES 3.0 Apple A7 GPU - 95.16”。

我是这样编译的:

GLint status;
const GLchar *source;

source = (GLchar *) [ [ NSString stringWithContentsOfFile:file encoding:NSUTF8StringEncoding error:nil ] UTF8String ];

if (!source)
{
DebugLog(@"Failed to load shader %@", file);
return FALSE;
}

*shader = glCreateShader( type );
glShaderSource( *shader, 1, &source, NULL );
glCompileShader( *shader );

最佳答案

我可以通过将 core 附加到 #version 命令来解决此错误。它似乎是一个可选参数,但它帮助我克服了语法错误。

#版本核心

关于ios - 在 IOS 上移动到 ES 3.0 后顶点着色器未编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42213915/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com