C++ OpenGL程序不断崩溃?
此代码返回3个错误(实际上是所有错误)C++ OpenGL程序不断崩溃?,c++,opengl,3d,core-graphics,glfw,C++,Opengl,3d,Core Graphics,Glfw,此代码返回3个错误(实际上是所有错误) GLEW初始化失败;GLFW初始化失败;窗口创建失败: #包括“GL/glew.h” #包括“GLFW/glfw3.h” #包括 //窗口尺寸 恒闪烁屏宽=800,屏高=600; int main(){ //初始化GLFW 如果(glfwInit()!=GLEW_OK){ 这是错误的: if(glfwInit()!=GLEW_OK){ 这是错误的: if(glfwInit()!=GLEW_OK){ 试试这个,你需要初始化Glew GLenum GlewIn
GLEW初始化失败;GLFW初始化失败;窗口创建失败
:
#包括“GL/glew.h”
#包括“GLFW/glfw3.h”
#包括
//窗口尺寸
恒闪烁屏宽=800,屏高=600;
int main(){
//初始化GLFW
如果(glfwInit()!=GLEW_OK){
这是错误的:
if(glfwInit()!=GLEW_OK){
这是错误的:
if(glfwInit()!=GLEW_OK){
试试这个,你需要初始化Glew
GLenum GlewInitResult;
GlewInitResult = glewInit();
if ( GLEW_OK != GlewInitResult)
{
glfwTerminate();
return -1;
}
试试这个,你需要初始化Glew
GLenum GlewInitResult;
GlewInitResult = glewInit();
if ( GLEW_OK != GlewInitResult)
{
glfwTerminate();
return -1;
}
有两个问题
如果成功,则返回GLFW_TRUE
(GLFW_TRUE
为1)。因此它必须是:
if(glfwInit()!=GLFW_TRUE){
有两个问题
如果成功,则返回GLFW_TRUE
(GLFW_TRUE
为1)。因此它必须是:
if(glfwInit()!=GLFW_TRUE){
std::cout唯一相关的错误是glfwInit();
调用,因为一旦出现错误,您就无法退出应用程序。@PaulMcKenzie抱歉?“…一旦出现错误,就无法退出应用程序”?这是什么意思?我做了glfwInit()“不”,“C++”<代码>主< <代码>函数没有返回。您的代码调用<代码> GLFWEATEATE()/CUT>,但这与<代码>主< /代码>返回无关,它只是一个函数调用。要终止应用程序,您可以从<代码>主< <代码> >代码> >代码>退出()。这就是为什么你会看到其他错误信息——你没有在第一个错误上跳过,而且你的程序一直在运行。而且,逻辑上思考它——如果我想在我的应用程序中结束GL引擎,但要保持我的应用程序运行呢?结束我的整个应用程序?当然不会。唯一相关的错误是glfwInit();
调用,因为一旦出现错误,您就无法退出应用程序。@PaulMcKenzie对不起?“…一旦出现错误,就无法退出应用程序”?这是什么意思?我做了glfweterminate()“不”,“C++”<代码>主< <代码>函数没有返回。您的代码调用<代码> GLFWEATEATE()/CUT>,但这与<代码>主< /代码>返回无关,它只是一个函数调用。要终止应用程序,您可以从<代码>主< <代码> >代码> >代码>退出()。这就是为什么你会看到其他错误信息——你没有在第一个错误上跳过,而且你的程序一直在运行。而且,逻辑上思考它——如果我想在我的应用程序中结束GL引擎,但要保持我的应用程序运行呢?结束我的整个应用程序?当然不是。我认为OP的意思是glfwInit()!=GLFW_TRUE
而只是使用了错误的常量。我认为OP的意思是glfwInit()!=GLFW_TRUE
而只是使用了错误的常量。