I am seeing a strange side effect of running in full screen mode in 1.4.0. Thought perhaps someone here could enlighten me as to the problem.

If I run my program several (10s of) times eventually the scolling goes from totally smooth to extreemly jerky and the frame rate drops dramatically. Sometime the program even starts to refuse to run telling me it "can't get the video mode".

If I change the resolution of the windows desktop to another resolution and then back to my normal resolution (not the res of the program) sometimes the problems goes away. Until another several runs. If I reboot the machine then the problems goes away, again until another several runs.

Is it possible that the image handling in Java 1.4 is somehow locking video memory and no releasing it? That is how the program reacts, as if it can no longer accelerate images due to incefficient VRAM.

I am seeing a strange side effect of running in full screen mode in 1.4.0. Thought perhaps someone here could enlighten me as to the problem.

If I run my program several (10s of) times eventually the scolling goes from totally smooth to extreemly jerky and the frame rate drops dramatically. Sometime the program even starts to refuse to run telling me it "can't get the video mode".

If I change the resolution of the windows desktop to another resolution and then back to my normal resolution (not the res of the program) sometimes the problems goes away. Until another several runs. If I reboot the machine then the problems goes away, again until another several runs.

Is it possible that the image handling in Java 1.4 is somehow locking video memory and no releasing it? That is how the program reacts, as if it can no longer accelerate images due to incefficient VRAM.

I think it has already been established, that buffer strategy+fullscreen in jdk1.4.1_01 is broken in many places.

It appears to be any program that is: full screen and allocates a fair number of accelorated images.

I use 3 buffers in the strategy. Start from a fresh reboot and then run the program say 20 to 30 times. The scrolling demo I put up in the shared code area has this same issue. So I suppose I should try that on another machine and see if the problem occurs.

I agree with Abuse, the DirectX should handle the cleaning up stuff for the application (j2se in this case). Unfortunately, in some cases it really doesn't (especially on Windows9x/ME). Haven't seen this on Win2K, though.

Try a test: make sure your app releases all (accelerated) images on exit (you can even release allocated vram yourself by calling flush() method on your Volatile and accelerated images), and see if it improves the situation.

java.lang.InternalError: not implemented yet at sun.awt.windows.Win32OffScreenSurfaceData.getRaster(Win32OffScreenSurfaceData.java:278) at sun.java2d.loops.OpaqueCopyAnyToArgb.Blit(CustomComponent.java:67) at sun.java2d.loops.GraphicsPrimitive.convertFrom(GraphicsPrimitive.java:451) at sun.java2d.loops.MaskBlit$General.MaskBlit(MaskBlit.java:169) at sun.java2d.loops.Blit$GeneralMaskBlit.Blit(Blit.java:170) at sun.java2d.pipe.DrawImage.blitSurfaceData(DrawImage.java:658) at sun.java2d.pipe.DrawImage.renderSurfaceData(DrawImage.java:386) at sun.java2d.pipe.DrawImage.clipAndRenderSurfaceData(DrawImage.java:364) at sun.java2d.pipe.DrawImage.copyImage(DrawImage.java:66) at sun.java2d.pipe.DrawImage.copyImage(DrawImage.java:50) at sun.java2d.pipe.DrawImage.copyImage(DrawImage.java:749) at sun.java2d.SunGraphics2D.drawImage(SunGraphics2D.java:2803) at sun.java2d.SunGraphics2D.drawImage(SunGraphics2D.java:2793) at Particle.render(Particle.java:182) at ParticleAnim.render(ParticleAnim.java:115) at ParticleAnim.run(ParticleAnim.java:231) at java.lang.Thread.run(Thread.java:536)

Suffice to say, the FullScreen/BufferStrategy/VolatileImage are all quite severely broken.

just for a laugh, shall we create a new Thread, and post all the different low level exceptions that we can get FullScreen/BufferStrategy/VolatileImage to throw

java-gaming.org is not responsible for the content posted by its members, including references to external websites,
and other references that may or may not have a relation with our primarily
gaming and game production oriented community.
inquiries and complaints can be sent via email to the info‑account of the
company managing the website of java‑gaming.org