0

了解しました。TheCodingUniverseのいくつかのチュートリアルを通じてLWJGLの学習を開始しましたが、線と四角形の描画で壁にぶつかりました。

コード

package LWJGL_Learn;

import static org.lwjgl.opengl.GL11.*;
import org.lwjgl.opengl.*;
import org.lwjgl.*;

public class SimpleOGLRenderer {

    public SimpleOGLRenderer() {
        try {
            Display.setDisplayMode(new DisplayMode(640, 480));
            Display.setTitle("SimpleOGLRenderer");
            //Display.setInitialBackground(256, 256, 256);
            Display.create();
        } catch (LWJGLException e) {
            e.printStackTrace();
        }

        //OpenGL Initialization
        glMatrixMode(GL_PROJECTION); 
        glLoadIdentity();
        glOrtho(0, 640, 480, 0, 1, -1);
        glMatrixMode(GL_MODELVIEW);

        while (!Display.isCloseRequested()) {

            //Render Code'
            glBegin(GL_QUADS);
                glVertex2i(50, 50);
                glVertex2i(80, 70);
                glVertex2i(80, 130);
                glVertex2i(50, 300);
            glEnd();

            glBegin(GL_LINES);
                glVertex2i(100, 100);
                glVertex2i(200, 200);
            glEnd();

            GL11.glClear(GL11.GL_COLOR_BUFFER_BIT);
            Display.update();
            Display.sync(60);
        }
        Display.destroy();
        System.exit(0);
    }
    public static void main(String[] args) {
        new SimpleOGLRenderer();
    }
}

このビデオの約6:50分を参照して、コードが何であるか、およびコードが何をするかを確認してください。

とにかく、問題は線やクワッドが表示されないことです。画面は黒のままです。さて、黒のディスプレイに黒の線が描かれているせいかと思い、背景色(コメントアウトされた線のように.setInitialDisplay...)を変更しましたが、結果が出ませんでした。色は変わりましたが、画面は白のままで線は出ませんでした。私が間違っていることを知っている人はいますか?

4

1 に答える 1

1

1) デフォルトの色は白ですが、Display.update() の削除を実行する直前にカラー バッファーをクリアしています。

GL11.glClear(GL11.GL_COLOR_BUFFER_BIT);

2) 6:50 の直前で、ビデオの座標を使用していません。

于 2012-12-22T19:33:24.370 に答える