I’m having all sorts of issues with JME3 that I’m starting to believe is a sign that my graphics card is not fully up to the job. I know it’s a terrible card (ATI Mobility Radeon HD 4570), but I was hoping it would be just about ok.
The problem I am having is that I receive the following error when trying to run certain applications (such as the TestNiftyToMesh JME test, and sadly Mythruna). I have spoken to Paul from Mythruna to try and solve this problem, but it’s looking more and more like it’s either my card or a bug in JME (probably the former :P)
Stacktrace:
2011-08-04 01:30:04,446 ERROR [mythruna.MainStart] Unhandled error:Uncaught exception thrown in Thread[LWJGL Renderer Thread,5,main]
java.lang.IllegalStateException: Incomplete draw buffer.
at com.jme3.renderer.lwjgl.LwjglRenderer.checkFrameBufferError(LwjglRenderer.java:1275)
at com.jme3.renderer.lwjgl.LwjglRenderer.setFrameBuffer(LwjglRenderer.java:1523)
at com.jme3.renderer.RenderManager.renderViewPort(RenderManager.java:1103)
at com.jme3.renderer.RenderManager.render(RenderManager.java:1164)
at com.jme3.app.SimpleApplication.update(SimpleApplication.java:264)
at com.jme3.system.lwjgl.LwjglAbstractDisplay.runLoop(LwjglAbstractDisplay.java:144)
at com.jme3.system.lwjgl.LwjglDisplay.runLoop(LwjglDisplay.java:185)
at com.jme3.system.lwjgl.LwjglAbstractDisplay.run(LwjglAbstractDisplay.java:218)
at java.lang.Thread.run(Unknown Source)
2011-08-04 01:30:04,449 ERROR [mythruna.MainStart] Default handling did not exit.
Please tell me there is some simple fix I can make to solve this issue!
Gaz
You might want to post the log or at least portions of it that you got when you ran the nifty test… since that will have the graphics card info in it. Someone smarter than I am can then tell you if it’s even possible to have it work.
05-Aug-2011 10:10:15 com.jme3.app.Application handleError
SEVERE: Uncaught exception thrown in Thread[LWJGL Renderer Thread,6,main]
java.lang.IllegalStateException: Incomplete draw buffer.
at com.jme3.renderer.lwjgl.LwjglRenderer.checkFrameBufferError(LwjglRenderer.java:1135)
at com.jme3.renderer.lwjgl.LwjglRenderer.setFrameBuffer(LwjglRenderer.java:1381)
at com.jme3.renderer.RenderManager.renderViewPort(RenderManager.java:701)
at com.jme3.renderer.RenderManager.render(RenderManager.java:739)
at com.jme3.app.SimpleApplication.update(SimpleApplication.java:249)
at com.jme3.system.lwjgl.LwjglAbstractDisplay.runLoop(LwjglAbstractDisplay.java:158)
at com.jme3.system.lwjgl.LwjglDisplay.runLoop(LwjglDisplay.java:203)
at com.jme3.system.lwjgl.LwjglAbstractDisplay.run(LwjglAbstractDisplay.java:221)
at java.lang.Thread.run(Thread.java:662)
It seems to suggest that NPOT texture support came in in OpenGL2.0, whereas JME states that my card can use v2.1. Saying that it does seem that you are probably right.
Actually I use a Radeon 3800 Hd, and everything works, If I’m not mistaken your card is one generation newer? Uptodate drivers? Also yes, the Radeon crads can use some opengl3 features already.
nehon said:
Maybe your card does not support non power of 2 textures for frame buffers.
Are your drivers up to date?
@Paul, I guess this FBO is used for filters, maybe you should add a way to disable filters in mythruna. There might be a way to check NPOT capability.
Except it fails before it even opens the first nifty screen. It's possible it's the post processors... but without post processing water doesn't work and lighting looks dumb.
I was going to have him try the regular nifty example but apparently we don’t have that anymore. Just the “colors quads and text” and the render to a bitmap… the second of which fails. Since we no longer seem to have a nifty test that has actual bitmapped screens, etc… then it’s hard to confirm in my current architecture. A while back I moved the setup of the post processors back to simpleInit trying to work around some other issues someone was having.
So it could be the post processors… but I’m disinclined to remove them.
Just to be on the safe side, test your openGL extensions with this little program found here.
Check if everything looks right then run the tests and see how that goes. If those tests run fine, no errors etc, then we can surmise that the problem is either the post-processing or jME.
Interesting…Drivers are up to date, but the when I run the tests that @madjack mentioned I get the following error:
System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
at openglex.Win32.oevRunRenderingTests(String szRequest)
at openglex.oevMain.OnRenderingTest(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Looks like it's a problem my end then chaps. How odd.
Nothing apart from just plain not being able to play some due to FPS lag, but that is to be expected with an integrated card of this nature. It’s not a massive issue as of yet, just means I miss out on Mythruna :P, and can’t add anything too fancy to my game, at least not from this box.
Sorry, the original poster said it wasn’t there in a previous conversation and I thought it had been removed. I remember some discussion about new examples coming or something. I didn’t check.
@gb056, please try TestNiftyExamples and see if it runs.
I can’t seem to find it in my version…odd because I can see it if I look at the google code (I’m using the version that came with JMP as far as I can remember, it was a week or so ago). Anyway I’ve downloaded the .java for it as a quick fix, but can’t find the “all/intro.xml” file it uses anywhere (including the code repo). Can somebody point me in the right direction/post it here??
I will get round to updating to the very latest version of JME soon, however I figured I can’t have that old a build as I only heard about the engine last week.
The all/intro.xml is in one of the nifty example jars. I haven’t updated in a while so maybe that’s all broken at the moment. Someone else will have to answer.
Ok after some fiddling I found the file and got the example test running. It gets to the main menu and on selecting the first option errors out as it’s missing “aurulent-sans-17.png.”
I found that on the internet and got it running again, but this time it can’t find " aurulent-sans-17.png (Flipped)" grr :P.
I need to be up early tomorrow and it’s 11:30pm here so will try again in the morning. Tests run smoothly up until there however.