Окно GLFW не закрывается - PullRequest
       8

Окно GLFW не закрывается

0 голосов
/ 22 февраля 2020

Окно никогда не закрывается при нажатии кнопки закрытия, и closeWindowCallback () никогда не вызывается. Почему это так?

Работает под Ubuntu 18.04, скомпилировано с g cc.

#include <stdlib.h>
#include <stdio.h>
#include <GLFW/glfw3.h>

void error_callback(int error, const char *description)
{
  fprintf(stdout, "Error: %s\n", description);
}

void closeWindowCallback(GLFWwindow *window)
{
  printf("close\n");

  glfwSetWindowShouldClose(window, GL_TRUE);
}

int main(void)
{
  glfwSetErrorCallback(error_callback);
  if (!glfwInit())
  {

  }
  GLFWwindow *window = glfwCreateWindow(640, 480, "My Title", NULL, NULL);
  if (!window)
  {

  }
  glfwMakeContextCurrent(window);
  glfwSetWindowCloseCallback(window, closeWindowCallback);

  while (!glfwWindowShouldClose(window))
  {
  }
  glfwDestroyWindow(window);

  glfwTerminate();
  return 0;
}

1 Ответ

1 голос
/ 22 февраля 2020

Я взял это из официальной документации:

while (!glfwWindowShouldClose(window))
{
    render(window);

    glfwSwapBuffers(window);
    glfwPollEvents();
}

Вам нужно опросить события, чтобы закрыть окно X11.

...