JOGL: вынужден спать в функции дисплея, чтобы избежать сбоя ПК: аппаратная проблема или нет? - PullRequest
0 голосов
/ 02 ноября 2019

Я новый пользователь JOGL, и я пытаюсь реализовать некоторые функции для будущей игры.

Моя GLEventListener функция отображения просто вызывает функцию для каждого объекта с таким же GL2 экземпляр в качестве аргумента.

В настоящее время я пытаюсь визуализировать анимированные объекты с текстурами. Итак, я загрузил TextureData (через TextureIO) в конструктор, и я просто строю Texture (через TextureIO и textureData) и рендерил его с классическим gl.glBegin(GL2.GL_QUAD) --- gl.glEnd().

Но с двумя сущностями, такими какэтот мой компьютер стал полностью прослушиваемым: он выглядит как работающий, но каждая графика определенно зависает, и мне нужно перезагрузить компьютер вручную.

Так что я попытался замедлить функцию дисплея, заставляя поток спать. И неожиданности больше не будет. НО: при 1 рендеринге каждые 30 мс он по-прежнему дает сбой, а при 200 мс - нет.

Похоже, он работает на моем ПК, но что, если другой ПК может обработать обновление 20 мс?

.

Очевидно, что это не лучший способ сделать это.

Если мой компьютер не может работать так быстро, приложение должно «запаздывать», и мой компьютер не должен так глючить, верно?

Причиной проблемы является JOGL конфигурация / инициализация? Или это просто от моего оборудования (i915 graphic card :/)?

И куда бы он ни пришел, как лучше всего справиться с этим?

Я много смотрю на Google, но я не нашел похожую тему, поэтому я прямо прошу вас:)

Thx.

...