2016-06-04 15 views
0

В настоящее время я работаю над двумерным движком игры Regula. Я только что закончил систему пакетной рендеринга, которая отображает 2D-текстуры, представленные ей в партиях 32. При тестировании возможности воспроизведения более 32 текстур я обнаружил, что отображаемые текстуры кажутся импульсом или дрожанием. Эффект нежелателен и очень раздражает. Кажется, что это происходит больше, когда камера движется. Кроме того, иногда текстуры будут иметь небольшие артефакты, если камера находится в определенном положении. Я пытался исправить проблему в течение некоторого времени, но не смог добиться успеха.OpenGL 2D текстуры дрожащие/пульсирующие

Here is a rather boring video illustrating the effect.

Вы можете найти весь исходный код двигателя в репозитории Regula's GitHub here. Файлы intrest являются из:

  • Регула \ Регула \ Inc \ Регула \ Graphics \ BatchRenderer.h
  • Регула \ Регула \ Src \ Graphics \ BatchRenderer.cpp
  • Регула \ RegulaTestBench \ Inc \ Game .h
  • Регула \ RegulaTestBench \ Src \ Game.cpp
  • Кроме того, может быть класс Camera2D в Регула \ Graphics
  • Potentiallt класс ShaderManager
  • о r шейдеры в Regula \ RegulaTestBench \ Resources \ Shaders \ DefaultSprteShader.vert/frag

Любая помощь будет принята с благодарностью, спасибо.

+1

Возможно, у вас есть ошибки с низкой или низкой плавающей запятой. – Dan

ответ

0

Большинство людей не забыли или не включили функцию V-sync. Попробуйте включить glfwSwapInterval (1) при создании окна.

+0

Эй, я попробовал включить V-Sync, но, к сожалению, проблема не устранена. Извините, что задержка была немного занята, просто закончила среднюю школу. –