Olá
É o seguinte: estou fazendo um game em java com OpenGL. Estava tudo ocorrendo bem até que precisei da GUI. Pensei então em usar swing. Na minha mente seria apenas conseguir fazer o swing rodar em OpenGL que funcionava. Funcionou. Mas um problema apareceu: performance. Com uma tabela de duas colunas e 10 linhas o FPS (com vsync) caiu de 75 pra 14! Pior ainda quando redimensiono uma janela (JInternalFrame): a utilização do processador vai a 100% num dual core! E com tudo parado, de vez em quando o processador chega a uns picos de 35% a 50%.
Sei que o swing é otimizado para eventos de invalidação de área e o OpenGL renderiza tudo a cada frame. Porém, mesmo cacheando os valores, ainda tenho performances parecidas. O gargalo parece estar no sistema de eventos AWT… mas sempre que procuro algo sobre, encontro pessoas ou falando super bem ou super mal.
Não queria fazer um sistema de GUI do zero… dá muito trabalho e não tenho muito tempo… gostaria de saber se alguém conhece algum artigo que me ajude ou já enfrentou algum problema parecido.
Agradeço desde já!
Até mais!