0

lwjgl でディスプレイを開くのに問題があります。これは、Windows 10にアップグレードする前に機能しました(以前はWindows 7を使用していました)。

ここにコンソールからのエラーがあります

org.lwjgl.LWJGLException: Pixel format not accelerated
at org.lwjgl.opengl.WindowsPeerInfo.nChoosePixelFormat(Native Method)
at org.lwjgl.opengl.WindowsPeerInfo.choosePixelFormat(WindowsPeerInfo.java:52)
at org.lwjgl.opengl.WindowsDisplay.createWindow(WindowsDisplay.java:247)
at org.lwjgl.opengl.Display.createWindow(Display.java:306)
at org.lwjgl.opengl.Display.create(Display.java:848)
at org.lwjgl.opengl.Display.create(Display.java:797)
at com.asasse.game3d.renderengine.DisplayManager.createDisplay(DisplayManager.java:23)
at com.asasse.game3d.enginetester.MainGameLoop.main(MainGameLoop.java:22)
Exception in thread "main" java.lang.RuntimeException: No OpenGL context found in the current thread.
at org.lwjgl.opengl.GLContext.getCapabilities(GLContext.java:124)
at org.lwjgl.opengl.GL11.glViewport(GL11.java:3261)
at com.asasse.game3d.renderengine.DisplayManager.createDisplay(DisplayManager.java:31)
at com.asasse.game3d.enginetester.MainGameLoop.main(MainGameLoop.java:22)

ここで私のプロジェクトの私のコードがエラーを引き起こしている場合

     final ContextAttribs attribs = new ContextAttribs(3, 1).withForwardCompatible(true);

    try {

        Display.setDisplayMode(new DisplayMode(WIDTH, HEIGHT));
        Display.create(new PixelFormat(), attribs);

    } catch (final LWJGLException e) {

        e.printStackTrace();

    }

    GL11.glViewport(0, 0, WIDTH, HEIGHT);

幅は 1280、高さは 720

4

1 に答える 1

1

代わりにこれを使用してみてください:

ContextAttribs attribs = new ContextAttribs(3,3)
        .withForwardCompatible(true)
        .withProfileCore(true);

        try {
            Display.setDisplayMode(new DisplayMode(WIDTH,HEIGHT));
            Display.create(new PixelFormat(),attribs);
        } catch (LWJGLException e) {
            e.printStackTrace();
        }

私の推測では、バージョンが低すぎて計算できないため、例外がスローされたのです。

それでも問題が解決しない場合は、グラフィックス ドライバーがWindows 10 用に古くなっている可能性があります。ドライバーをアップグレードしてみてください。( を押した後に dxdiag と入力すると、ドライバーが表示されますwindows + R)

于 2016-01-11T05:30:15.783 に答える