2013-10-09 2 views
-1

У меня есть небольшая и базовая программа на C++, которую я создал в Visual Studio 2012, которая использует GLFW и OpenGL, но всякий раз, когда мой друг пытается запустить ее на своей машине с Windows 8, она немедленно сбрасывается без дополнительной информации (просто говорит: «Программа остановлена running ')Почему моя программа OGL не работает на WIndows 8?

Теперь открывается окно команд для программы, которое предшествует фактическому оконному окну glfw, которое не открывается. Поэтому я думаю, может быть, это не само открытие или окно?

Несколько деталей:

  • версия она имеет была построена в выпуске.
  • Win8 машина 64 бит, программа построена на 64 машины для 32
  • Я статически связан/MT в сборку, поэтому там не должно быть какой-либо отсутствует длл MSVC вопросы
  • Это потребовало, чтобы я восстановить GLFW статически связать это так же
  • Я не использую какие-либо другие библиотеки, единственными, что добавил к входу линкера «glfw3.lib; opengl32.lib; glu32.lib»

И, наконец, вот отрывок из моих код открытия окна:

glfwWindowHint(GLFW_RESIZABLE, 0); 
m_window = glfwCreateWindow(winSize.x, winSize.y, windowName.c_str(), NULL, NULL); 

if(!m_window) 
    throw std::exception("Window failed to create"); 

glfwGetFramebufferSize(m_window, &m_windowSize.x, &m_windowSize.y); 
glfwMakeContextCurrent(m_window); 

Любые мысли о вещах, которые я могу попробовать? Я могу загрузить exe, если кто-то хочет попробовать его на своей машине.

+0

Действительно ли 'GLFW_RESIZABLE' действительно и единственный единственный намек на то, что вы проходите? Документация API, похоже, указывает на необходимость вызова 'glfwDefaultWindowHints (...)'. Язык немного расплывчатый, поскольку это может означать, что значения по умолчанию никогда не инициализируются или что они просто не сбрасываются после создания: * подсказки больше не возвращаются к значениям по умолчанию при создании окна. Чтобы установить значения подсказки по умолчанию, используйте 'glfwDefaultWindowHints (...)'. * Тем не менее, если GLFW3 может получить только формат пикселя GDI, он не сможет создать окно, я не могу представить, что это происходит на машине Win8; никогда не знаешь. –

ответ

1

Сообщите своему другу, чтобы установить графические драйверы, загруженные с веб-сайта производителя графического процессора. Графические драйверы, поставляемые с самой Windows, не имеют надлежащей поддержки OpenGL.

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