当前位置: 首页 > 知识库问答 >
问题:

GLFW3-控制台错误:“WGL:找不到合适的像素格式”

弘兴言
2023-03-14

我在windows 7(64位)上使用32位MSVC2010。

AFAIK,我已经将我所有的库正确地链接在一起:在下面的选项中添加:

3.链接器->输入->附加依赖项glfw3.lib opengl32.lib user32.lib

我还将.dll文件从library文件夹放置到system32文件夹中,以供默认执行。

当我编译测试应用程序时:

#include <GLFW/glfw3.h>
#include <stdlib.h>
#include <stdio.h>
static void error_callback(int error, const char* description)
{
    fputs(description, stderr);
}
static void key_callback(GLFWwindow* window, int key, int scancode, int action, int mods)
{
    if (key == GLFW_KEY_ESCAPE && action == GLFW_PRESS)
        glfwSetWindowShouldClose(window, GL_TRUE);
}
int main(void)
{
    GLFWwindow* window;
    glfwSetErrorCallback(error_callback);
    if (!glfwInit())
        exit(EXIT_FAILURE);
    window = glfwCreateWindow(640, 480, "Simple example", NULL, NULL);
    if (!window)
    {
        glfwTerminate();
        exit(EXIT_FAILURE);
    }
    glfwMakeContextCurrent(window);
    glfwSetKeyCallback(window, key_callback);
    while (!glfwWindowShouldClose(window))
    {
        float ratio;
        int width, height;
        glfwGetFramebufferSize(window, &width, &height);
        ratio = width / (float) height;
        glViewport(0, 0, width, height);
        glClear(GL_COLOR_BUFFER_BIT);
        glMatrixMode(GL_PROJECTION);
        glLoadIdentity();
        glOrtho(-ratio, ratio, -1.f, 1.f, 1.f, -1.f);
        glMatrixMode(GL_MODELVIEW);
        glLoadIdentity();
        glRotatef((float) glfwGetTime() * 50.f, 0.f, 0.f, 1.f);
        glBegin(GL_TRIANGLES);
        glColor3f(1.f, 0.f, 0.f);
        glVertex3f(-0.6f, -0.4f, 0.f);
        glColor3f(0.f, 1.f, 0.f);
        glVertex3f(0.6f, -0.4f, 0.f);
        glColor3f(0.f, 0.f, 1.f);
        glVertex3f(0.f, 0.6f, 0.f);
        glEnd();
        glfwSwapBuffers(window);
        glfwPollEvents();
    }
    glfwDestroyWindow(window);
    glfwTerminate();
    exit(EXIT_SUCCESS);
}

共有1个答案

仲孙宇定
2023-03-14

Microsoft提供的图形驱动程序要么不支持OpenGL,要么只有非常过时或有限的支持,这并不罕见。他们首先对桌面的正确工作感兴趣,这也意味着要启动和运行Direct3D,但肯定不是OpenGL。

 类似资料:
  • 您好,我在H2控制台数据库中查看我的模式时遇到问题: 我正在使用spring boot: 这是我的登录页面: 所以我看到的是标准的控制台视图,没有我的桌子,但我的应用程序运行良好。

  • 问题内容: 我是Java的新手,正在尝试为Minecraft制作一个mod,但我不知道如何解决此错误: 这是我的代码: 这是怎么回事,我正在尝试使字符串“ Username”重定向到另一个类。 问题答案: Java编译器告诉您不能构造对象,因为您对构造函数的调用与任何已知的构造函数都不匹配。 具体来说,编译器发现了两个构造函数: 但您致电给: 都不匹配。

  • 将响应实体主体类型更改为String非常有效。怎么了?也许这是窃听器? 附注:使用Spring4.2.8,Spring靴1.3.8。

  • 我使用mn create-app example.micronaut.complete创建了一个新的micronaut应用程序 之后,我使用intellij打开了项目,并将一个新类作为TestController添加到项目中,代码如下: 但我得到了

  • 问题内容: 这是错误: 怎么了 问题答案: 您需要将驱动程序加载到某个地方。 您将在程序的类路径中需要postgresql驱动程序.jar文件。

  • 当我在gvm中进入grails控制台时,控制台加载时出现了几个错误。我看了其他答案,但没有提到grails和groovy的最新版本。 我运行的是LinuxMint17.1,拥有Grails3.0.3版、groovy 2.4.3版和JVM 1.8.045版。 此外,以下是加载的一些错误: 线程“thread-14”groovy中出现异常。lang.MissingPropertyException:没