2015-08-21 3 views
1

Итак, я смотрю эту серию учебников на LWJGL3, и когда OpenGL предполагается инициализировать в функции init, она не выполняет сама функция.OpenGL glfwInit() автоматический запуск?

Итак, здесь он проверяет, выполняется ли glfwInit(), и если он не выводит код ошибки. Но как работает glfwInit()?

Я не называю это нигде, так как?

public void init() { 

    if(glfwInit() != GL_TRUE){ 
     System.err.println("Failed to initilaize OpenGL"); 
    } 

} 

Полный код ниже

import static org.lwjgl.glfw.GLFW.*; 
import static org.lwjgl.opengl.GL11.*; 
import static org.lwjgl.system.MemoryUtil.*; 
import java.nio.ByteBuffer; 
import org.lwjgl.glfw.GLFWvidmode; 

public class Driver implements Runnable { 

    private Thread thread = new Thread(); 
    private boolean running = false; 

    public Driver() { 

    } 

    private synchronized void start() { 
     thread.start(); 
     running = true; 
    } 

    private synchronized void stop() { 
     try { 
      thread.join(); 
      running = false; 
     } catch(InterruptedException e) { 
      e.printStackTrace(); 
     } 
    } 

    public void run() { 
     init(); 
     while (running) { 

      System.out.println("The game is running..."); 

      render(); 
      update(); 
     } 
    } 

    public void update() { 

    } 

    public void render() { 

    } 

    public void init() { 

     if (glfwInit() != GL_TRUE) { 
      System.err.println("Failed to initilaize OpenGL"); 
     } 
    } 

    public static void main(String[] args) { 
     Driver game = new Driver(); 
     game.start(); 
     game.run(); 
    } 

} 

ответ

2

glfwInit() это вызывает функцию.

glfwInit() != GL_TRUE это проверяет, что функция вернула true, а не выполнена ли она или нет, она выполнена.

Смежные вопросы