在PlayN中未找到OpenGL上下文错误

在PlayN中未找到OpenGL上下文错误,opengl,playn,Opengl,Playn,使用PlayN,我试图更改正方形图层上的图像。我正在尝试创建翻转效果来更改图像。我这样做是通过将层的原点设置为图像的中心,然后减小宽度并在宽度几乎为零(图像不可见)时更改图像,然后将宽度增加回原始大小 我正在使用自定义计时器任务来播放此转换 现在我有一个问题和一个问题 问题是,有没有更好的方法来实现我的目标 问题是图像翻转得很完美,但当我再次单击图像将其翻转回来时,会出现以下错误 您只能在主线程(调用update()/paint()方法的线程)中调用draw方法—如果您创建了一个计时器任务(我假

使用PlayN,我试图更改正方形图层上的图像。我正在尝试创建翻转效果来更改图像。我这样做是通过将层的原点设置为图像的中心,然后减小宽度并在宽度几乎为零(图像不可见)时更改图像,然后将宽度增加回原始大小

我正在使用自定义计时器任务来播放此转换

现在我有一个问题和一个问题

问题是,有没有更好的方法来实现我的目标

问题是图像翻转得很完美,但当我再次单击图像将其翻转回来时,会出现以下错误


您只能在主线程(调用update()/paint()方法的线程)中调用draw方法—如果您创建了一个计时器任务(我假设它在不同的线程上运行),那么它将不具有gl上下文。不要使用计时器任务,也不要使用计时器任务,而是在主update()/paint()方法中抛出事件并侦听事件以执行操作。

我已删除计时器任务,现在使用update方法来制作动画,效果良好。谢谢
[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)