philipwhiuk / Game

Client-Server game framework
23 stars 12 forks source link

Nifty NPE in GL11 genTextures from NiftyType.create from fromXml from switchToLobby #61

Open philipwhiuk opened 10 years ago

philipwhiuk commented 10 years ago

NPE in LWJGL/Nifty stack when switching to Lobby.

Possible race?

Possible LWJGL

Results in partially loaded screen.

philipwhiuk commented 10 years ago
[29.07.2013] [00:25:48] INFO [nioEventLoopGroup-2-1] com.whiuk.philip.mmorpg.client.ClientChannelHandler (ClientChannelHandler.java:106) - [UPTIME:     0s] Connected to: localhost/127.0.0.1:8443
[29.07.2013] [00:25:48] INFO [nioEventLoopGroup-2-1] com.whiuk.philip.mmorpg.client.ClientChannelHandler (ClientChannelHandler.java:108) - Sending connected message
java.lang.NullPointerException
    at org.lwjgl.opengl.GL11.glGenTextures(GL11.java:1372)
    at de.lessvoid.nifty.renderer.lwjgl.render.LwjglRenderImage.createTextureID(LwjglRenderImage.java:127)
    at de.lessvoid.nifty.renderer.lwjgl.render.LwjglRenderImage.createTexture(LwjglRenderImage.java:70)
    at de.lessvoid.nifty.renderer.lwjgl.render.LwjglRenderImage.<init>(LwjglRenderImage.java:42)
    at de.lessvoid.nifty.renderer.lwjgl.render.LwjglRenderDevice.createImage(LwjglRenderDevice.java:198)
    at de.lessvoid.nifty.render.NiftyImageManager.addImage(NiftyImageManager.java:127)
    at de.lessvoid.nifty.render.NiftyImageManager.registerImage(NiftyImageManager.java:28)
    at de.lessvoid.nifty.render.NiftyRenderEngineImpl.createImage(NiftyRenderEngineImpl.java:172)
    at de.lessvoid.nifty.loaderv2.types.apply.ApplyRendererPanel.apply(ApplyRendererPanel.java:36)
    at de.lessvoid.nifty.elements.Element.initializeFromAttributes(Element.java:434)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyAttributes(ElementType.java:218)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:172)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ScreenType.create(ScreenType.java:80)
    at de.lessvoid.nifty.loaderv2.types.NiftyType.create(NiftyType.java:137)
    at de.lessvoid.nifty.Nifty.loadFromFile(Nifty.java:570)
    at de.lessvoid.nifty.Nifty.fromXml(Nifty.java:455)
    at com.whiuk.philip.mmorpg.client.GameClient.switchToLobbyScreen(GameClient.java:926)
    at com.whiuk.philip.mmorpg.client.GameClient.handleAuthMessageInRegisterState(GameClient.java:861)
    at com.whiuk.philip.mmorpg.client.GameClient.handleAuthMessage(GameClient.java:773)
    at com.whiuk.philip.mmorpg.client.GameClient.processInboundMessage(GameClient.java:564)
    at com.whiuk.philip.mmorpg.client.ClientChannelHandler.channelRead0(ClientChannelHandler.java:144)
    at com.whiuk.philip.mmorpg.client.ClientChannelHandler.channelRead0(ClientChannelHandler.java:1)
    at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:98)
    at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:372)
    at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:357)
    at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
    at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:372)
    at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:357)
    at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:173)
    at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:372)
    at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:357)
    at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:780)
    at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:99)
    at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:497)
    at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:465)
    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:359)
    at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:101)
    at java.lang.Thread.run(Thread.java:722)
java.lang.NullPointerException
    at org.lwjgl.opengl.GL11.glGenTextures(GL11.java:1372)
    at de.lessvoid.nifty.renderer.lwjgl.render.LwjglRenderImage.createTextureID(LwjglRenderImage.java:127)
    at de.lessvoid.nifty.renderer.lwjgl.render.LwjglRenderImage.createTexture(LwjglRenderImage.java:70)
    at de.lessvoid.nifty.renderer.lwjgl.render.LwjglRenderImage.<init>(LwjglRenderImage.java:42)
    at de.lessvoid.nifty.renderer.lwjgl.render.LwjglRenderDevice.createImage(LwjglRenderDevice.java:198)
    at de.lessvoid.nifty.render.NiftyImageManager.addImage(NiftyImageManager.java:127)
    at de.lessvoid.nifty.render.NiftyImageManager.registerImage(NiftyImageManager.java:28)
    at de.lessvoid.nifty.render.NiftyRenderEngineImpl.createImage(NiftyRenderEngineImpl.java:172)
    at de.lessvoid.nifty.loaderv2.types.apply.ApplyRendererPanel.apply(ApplyRendererPanel.java:36)
    at de.lessvoid.nifty.elements.Element.initializeFromAttributes(Element.java:434)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyAttributes(ElementType.java:218)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:172)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ScreenType.create(ScreenType.java:80)
    at de.lessvoid.nifty.loaderv2.types.NiftyType.create(NiftyType.java:137)
    at de.lessvoid.nifty.Nifty.loadFromFile(Nifty.java:570)
    at de.lessvoid.nifty.Nifty.fromXml(Nifty.java:455)
    at com.whiuk.philip.mmorpg.client.GameClient.switchToLobbyScreen(GameClient.java:926)
    at com.whiuk.philip.mmorpg.client.GameClient.handleAuthMessageInRegisterState(GameClient.java:861)
    at com.whiuk.philip.mmorpg.client.GameClient.handleAuthMessage(GameClient.java:773)
    at com.whiuk.philip.mmorpg.client.GameClient.processInboundMessage(GameClient.java:564)
    at com.whiuk.philip.mmorpg.client.ClientChannelHandler.channelRead0(ClientChannelHandler.java:144)
    at com.whiuk.philip.mmorpg.client.ClientChannelHandler.channelRead0(ClientChannelHandler.java:1)
    at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:98)
    at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:372)
    at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:357)
    at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
    at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:372)
    at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:357)
    at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:173)
    at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:372)
    at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:357)
    at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:780)
    at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:99)
    at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:497)
    at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:465)
    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:359)
    at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:101)
    at java.lang.Thread.run(Thread.java:722)
java.lang.NullPointerException
    at org.lwjgl.opengl.GL11.glGenTextures(GL11.java:1372)
    at de.lessvoid.nifty.renderer.lwjgl.render.LwjglRenderImage.createTextureID(LwjglRenderImage.java:127)
    at de.lessvoid.nifty.renderer.lwjgl.render.LwjglRenderImage.createTexture(LwjglRenderImage.java:70)
    at de.lessvoid.nifty.renderer.lwjgl.render.LwjglRenderImage.<init>(LwjglRenderImage.java:42)
    at de.lessvoid.nifty.renderer.lwjgl.render.LwjglRenderDevice.createImage(LwjglRenderDevice.java:198)
    at de.lessvoid.nifty.render.NiftyImageManager.addImage(NiftyImageManager.java:127)
    at de.lessvoid.nifty.render.NiftyImageManager.registerImage(NiftyImageManager.java:28)
    at de.lessvoid.nifty.render.NiftyRenderEngineImpl.createImage(NiftyRenderEngineImpl.java:172)
    at de.lessvoid.nifty.loaderv2.types.apply.ApplyRendererPanel.apply(ApplyRendererPanel.java:36)
    at de.lessvoid.nifty.elements.Element.initializeFromAttributes(Element.java:434)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyAttributes(ElementType.java:218)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:172)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ScreenType.create(ScreenType.java:80)
    at de.lessvoid.nifty.loaderv2.types.NiftyType.create(NiftyType.java:137)
    at de.lessvoid.nifty.Nifty.loadFromFile(Nifty.java:570)
    at de.lessvoid.nifty.Nifty.fromXml(Nifty.java:455)
    at com.whiuk.philip.mmorpg.client.GameClient.switchToLobbyScreen(GameClient.java:926)
    at com.whiuk.philip.mmorpg.client.GameClient.handleAuthMessageInRegisterState(GameClient.java:861)
    at com.whiuk.philip.mmorpg.client.GameClient.handleAuthMessage(GameClient.java:773)
    at com.whiuk.philip.mmorpg.client.GameClient.processInboundMessage(GameClient.java:564)
    at com.whiuk.philip.mmorpg.client.ClientChannelHandler.channelRead0(ClientChannelHandler.java:144)
    at com.whiuk.philip.mmorpg.client.ClientChannelHandler.channelRead0(ClientChannelHandler.java:1)
    at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:98)
    at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:372)
    at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:357)
    at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
    at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:372)
    at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:357)
    at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:173)
    at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:372)
    at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:357)
    at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:780)
    at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:99)
    at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:497)
    at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:465)
    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:359)
    at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:101)
    at java.lang.Thread.run(Thread.java:722)
java.lang.NullPointerException
    at org.lwjgl.opengl.GL11.glGenTextures(GL11.java:1372)
    at de.lessvoid.nifty.renderer.lwjgl.render.LwjglRenderImage.createTextureID(LwjglRenderImage.java:127)
    at de.lessvoid.nifty.renderer.lwjgl.render.LwjglRenderImage.createTexture(LwjglRenderImage.java:70)
    at de.lessvoid.nifty.renderer.lwjgl.render.LwjglRenderImage.<init>(LwjglRenderImage.java:42)
    at de.lessvoid.nifty.renderer.lwjgl.render.LwjglRenderDevice.createImage(LwjglRenderDevice.java:198)
    at de.lessvoid.nifty.render.NiftyImageManager.addImage(NiftyImageManager.java:127)
    at de.lessvoid.nifty.render.NiftyImageManager.registerImage(NiftyImageManager.java:28)
    at de.lessvoid.nifty.render.NiftyRenderEngineImpl.createImage(NiftyRenderEngineImpl.java:172)
    at de.lessvoid.nifty.loaderv2.types.apply.ApplyRendererImage.apply(ApplyRendererImage.java:37)
    at de.lessvoid.nifty.elements.Element.initializeFromAttributes(Element.java:434)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyAttributes(ElementType.java:218)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:172)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ScreenType.create(ScreenType.java:80)
    at de.lessvoid.nifty.loaderv2.types.NiftyType.create(NiftyType.java:137)
    at de.lessvoid.nifty.Nifty.loadFromFile(Nifty.java:570)
    at de.lessvoid.nifty.Nifty.fromXml(Nifty.java:455)
    at com.whiuk.philip.mmorpg.client.GameClient.switchToLobbyScreen(GameClient.java:926)
    at com.whiuk.philip.mmorpg.client.GameClient.handleAuthMessageInRegisterState(GameClient.java:861)
    at com.whiuk.philip.mmorpg.client.GameClient.handleAuthMessage(GameClient.java:773)
    at com.whiuk.philip.mmorpg.client.GameClient.processInboundMessage(GameClient.java:564)
    at com.whiuk.philip.mmorpg.client.ClientChannelHandler.channelRead0(ClientChannelHandler.java:144)
    at com.whiuk.philip.mmorpg.client.ClientChannelHandler.channelRead0(ClientChannelHandler.java:1)
    at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:98)
    at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:372)
    at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:357)
    at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
    at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:372)
    at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:357)
    at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:173)
    at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:372)
    at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:357)
    at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:780)
    at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:99)
    at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:497)
    at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:465)
    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:359)
    at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:101)
    at java.lang.Thread.run(Thread.java:722)
java.lang.NullPointerException
    at org.lwjgl.opengl.GL11.glGenTextures(GL11.java:1372)
    at de.lessvoid.nifty.renderer.lwjgl.render.LwjglRenderImage.createTextureID(LwjglRenderImage.java:127)
    at de.lessvoid.nifty.renderer.lwjgl.render.LwjglRenderImage.createTexture(LwjglRenderImage.java:70)
    at de.lessvoid.nifty.renderer.lwjgl.render.LwjglRenderImage.<init>(LwjglRenderImage.java:42)
    at de.lessvoid.nifty.renderer.lwjgl.render.LwjglRenderDevice.createImage(LwjglRenderDevice.java:198)
    at de.lessvoid.nifty.render.NiftyImageManager.addImage(NiftyImageManager.java:127)
    at de.lessvoid.nifty.render.NiftyImageManager.registerImage(NiftyImageManager.java:28)
    at de.lessvoid.nifty.render.NiftyRenderEngineImpl.createImage(NiftyRenderEngineImpl.java:172)
    at de.lessvoid.nifty.loaderv2.types.apply.ApplyRendererPanel.apply(ApplyRendererPanel.java:36)
    at de.lessvoid.nifty.elements.Element.initializeFromAttributes(Element.java:434)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyAttributes(ElementType.java:218)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:172)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyChildren(ElementType.java:251)
    at de.lessvoid.nifty.loaderv2.types.ElementType.applyStandard(ElementType.java:175)
    at de.lessvoid.nifty.loaderv2.types.ElementType.create(ElementType.java:144)
    at de.lessvoid.nifty.loaderv2.types.ScreenType.create(ScreenType.java:80)
    at de.lessvoid.nifty.loaderv2.types.NiftyType.create(NiftyType.java:137)
    at de.lessvoid.nifty.Nifty.loadFromFile(Nifty.java:570)
    at de.lessvoid.nifty.Nifty.fromXml(Nifty.java:455)
    at com.whiuk.philip.mmorpg.client.GameClient.switchToLobbyScreen(GameClient.java:926)
    at com.whiuk.philip.mmorpg.client.GameClient.handleAuthMessageInRegisterState(GameClient.java:861)
    at com.whiuk.philip.mmorpg.client.GameClient.handleAuthMessage(GameClient.java:773)
    at com.whiuk.philip.mmorpg.client.GameClient.processInboundMessage(GameClient.java:564)
    at com.whiuk.philip.mmorpg.client.ClientChannelHandler.channelRead0(ClientChannelHandler.java:144)
    at com.whiuk.philip.mmorpg.client.ClientChannelHandler.channelRead0(ClientChannelHandler.java:1)
    at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:98)
    at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:372)
    at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:357)
    at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
    at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:372)
    at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:357)
    at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:173)
    at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:372)
    at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:357)
    at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:780)
    at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:99)
    at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:497)
    at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:465)
    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:359)
    at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:101)
    at java.lang.Thread.run(Thread.java:722)