Центрируйте окно OpenGL с ИЗБЫТКОМ

У меня есть openGL окно, которое является 640x480, что я должен центрироваться посреди экрана. Я ранее использовал:

glutInitWindowPosition((GetSystemMetrics(SM_CXSCREEN)-640)/2,
                       (GetSystemMetrics(SM_CYSCREEN)-480)/2);

который РАБОТАВШИЙ.

Но теперь внезапно, когда я компилирую...

Linking...
1>Project1.obj : error LNK2028: unresolved token (0A000372) "extern "C" int __stdcall GetSystemMetrics(int)" (?GetSystemMetrics@@$$J14YGHH@Z) referenced in function "int __cdecl main(int,char * *)" (?main@@$$HYAHHPAPAD@Z)
1>Project1.obj : error LNK2019: unresolved external symbol "extern "C" int __stdcall GetSystemMetrics(int)" (?GetSystemMetrics@@$$J14YGHH@Z) referenced in function "int __cdecl main(int,char * *)" (?main@@$$HYAHHPAPAD@Z)
1>C:\Users\My Computer\Documents\School Stuff\CS445\Project1\Debug\Project1.exe : fatal error LNK1120: 2 unresolved externals

Кто-то помогите. Это является очень раздражающим и печальным для меня, поскольку я не знаю много о OpenGL и ИЗБЫТКЕ.

11
задан Max Shawabkeh 2 February 2010 в 04:52
поделиться

2 ответа

также вместо того, чтобы соединить user32.lib, вы можете сделать это исключительно использовать GluT:

glutGet(GLUT_SCREEN_WIDTH) // returns Screen width

и

glutGet(GLUT_SCREEN_HEIGHT) // returns Screen height

Почему зависят от Windows, когда вы можете быть перекрестной платформой?

Следовательно, ваш код будет выглядеть:

glutInitWindowPosition((glutGet(GLUT_SCREEN_WIDTH)-640)/2,
                       (glutGet(GLUT_SCREEN_HEIGHT)-480)/2);
21
ответ дан 3 December 2019 в 05:12
поделиться

Используйте батут:

(declare f)

(defn h [n]
   (println "(h " n ")")
   #(f (+ n 1)))

(defn g [n]
   (println "(g " n ")")
   #(h n))

(defn f [n]
   (println "(f " n ")")
   #(g n))

Запустите его с помощью:

(trampoline f 0)

Этот код был запущен на моем компьютере в фоновом режиме уже около 5 часов, и использование памяти плоское.

-121--2321920-

Решарпер делает это автоматически - он предлагает, когда он считает, что код должен быть извлечен в метод, и сделает извлечение для вас

-121--3176621-

Необходимо убедиться, что выполняется привязка к User32.lib, статической библиотеке, в которой определен GetSystemMetrics () . Откройте параметры настройки проекта и убедитесь, что User32.lib указан среди всех файлов .libs, с которыми вы связываетесь.

1
ответ дан 3 December 2019 в 05:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: