2016-06-04 5 views
0

Je travaille actuellement sur un moteur de jeu 2D appelé Regula. Je viens de terminer un système de rendu par lots qui rend les textures 2D soumises en lots de 32. En testant sa capacité à rendre plus de 32 textures, j'ai trouvé que les textures rendues semblaient pulser ou jitter. L'effet est indésirable et très ennuyeux. Cela semble se produire plus lorsque la caméra est en mouvement. De plus, les textures auront parfois de petits artefacts si la caméra est dans une position spécifique. J'ai essayé de rectifier la situation depuis un certain temps mais je n'ai pas réussi à réussir.Textures OpenGL 2D jitter/pulser

Here is a rather boring video illustrating the effect.

Vous pouvez trouver tous les codes sources du moteur dans le dépôt GitHub Regula here. Les fichiers de intrest sont:

  • Regula \ Regula \ Inc \ Regula \ Graphics \ BatchRenderer.h
  • Regula \ Regula \ Src \ Graphics \ BatchRenderer.cpp
  • Regula \ RegulaTestBench \ Inc \ Jeu .h
  • Regula \ RegulaTestBench \ Src \ Game.cpp
  • aussi peut-être la classe Camera2D dans Regula \ Graphics
  • Potentiallt la classe ShaderManager
  • o r les shaders dans Regula \ RegulaTestBench \ Ressources \ Shaders \ DefaultSprteShader.vert/frag

Toute aide serait grandement appréciée, merci.

+1

Il est possible que vous ayez des erreurs de sous-virement ou d'annulation de virgule flottante. – Dan

Répondre

0

La plupart des utilisateurs n'oublient pas d'activer la synchronisation V. Essayez d'activer glfwSwapInterval (1) lorsque vous créez une fenêtre.

+0

Hé, j'ai essayé d'activer V-Sync mais malheureusement le problème persiste. Désolé pour le retard été un peu occupé, juste diplômé de l'école secondaire. –