2013-04-01 8 views
0

Использование PlayN, я пытаюсь изменить изображение на квадратный слой. Я пытаюсь создать эффект flip для изменения изображений. Это я делаю, устанавливая начало слоя в центр изображения, а затем уменьшая ширину и изменяя изображение, когда ширина почти равна нулю (изображение не видно), а затем увеличивая ширину до исходного размера.Не найден контекст OpenGL в PlayN

Я использую пользовательскую задачу таймера для воспроизведения этого перехода.

Теперь у меня есть один вопрос и один вопрос.

Вопрос в том, что есть лучший способ для того чтобы достигнуть того, что я пытаюсь сделать

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

[java] Exception in thread "Timer-1" java.lang.RuntimeException: No OpenGL context found in the current thread. 
[java] at org.lwjgl.opengl.GLContext.getCapabilities(GLContext.java:124) 
[java] at org.lwjgl.opengl.GL11.glDeleteTextures(GL11.java:721) 
[java] at playn.java.JavaGL20.glDeleteTextures(JavaGL20.java:1050) 
[java] at playn.core.gl.GL20Context.destroyTexture(GL20Context.java:164) 
[java] at playn.core.gl.ImageGL.clearTexture(ImageGL.java:60) 
[java] at playn.core.gl.ImageGL.release(ImageGL.java:87) 
[java] at playn.core.gl.ImageLayerGL.setImage(ImageLayerGL.java:74) 
[java] at playn_poc.core.util.RotationTimerTask.run(RotationTimerTask.java:51) 
[java] at java.util.TimerThread.mainLoop(Timer.java:512) 
[java] at java.util.TimerThread.run(Timer.java:462) 

ответ

0

можно назвать только рисовать методы в основном потоке (поток, который вызывает обновление()/краска() методы) - если вы создали задание таймера, который я предполагаю, выполняется на другой поток, тогда он не будет иметь контекст gl. Не используйте задачу таймера или используйте задачу таймера, но бросайте события и слушайте события в основном методе update()/paint() для выполнения своих операций.

+0

Я удалил задачу Timer и теперь использую метод обновления, чтобы сделать анимацию, и она работает. Благодарю. –

 Смежные вопросы

  • Нет связанных вопросов^_^