#libgdx
#libgdx
Вопрос:
Привет, у меня есть игра, в которой использовалось приложение lwjgl3 с 1.9.10, после обновления до версии 1.10.0 рисунок заметно ухудшился на моем macbook pro 2014 года. Вы можете заметить разницу даже при рисовании одной текстуры. Когда текстуры рисуются, кажется, что они нарисованы горизонтальными кусками, создавая иллюзию, что рисунок отстает. Частота кадров via Gdx.graphics.getFramesPerSecond()
по-прежнему составляет ~60. На больших сценах странность рисунка очень очевидна в виде больших горизонтальных полос артефактов, проходящих по экрану.
Я использовал инструмент генератор проектов, чтобы создать проект с нуля, чтобы попытаться сузить его, похоже, что деградация происходит между 1.9.10 и 1.9.11.
Для сравнения, использование LwjglApplication
работает так же хорошо, как и раньше.
Ниже приведен код, если вы работаете на Mac, обязательно добавьте -XstartOnFirstThread
arg виртуальной машины в программу запуска рабочего стола, иначе она не запустится.
public class DesktopLauncher { public static void main (String[] arg) { final Lwjgl3ApplicationConfiguration config = new Lwjgl3ApplicationConfiguration(); new Lwjgl3Application(new MyGdxGame(), config); } } public class MyGdxGame extends ApplicationAdapter { SpriteBatch batch; Texture img; int posX, posY; @Override public void create () { batch = new SpriteBatch(); img = new Texture("badlogic.jpg"); } @Override public void render () { Gdx.gl.glClearColor(1, 0, 0, 1); Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT); batch.begin(); batch.draw(img, posX, posY); batch.end(); // make texture move around a bit posX ; posY ; if (posX gt;= Gdx.graphics.getWidth() - img.getWidth()) { posX = 0; posY = 0; } } @Override public void dispose () { batch.dispose(); img.dispose(); } }
Спасибо