Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refuses to run #43

Closed
StrikerMan780 opened this issue May 30, 2014 · 12 comments
Closed

Refuses to run #43

StrikerMan780 opened this issue May 30, 2014 · 12 comments

Comments

@StrikerMan780
Copy link

I decided to compile Terminal-Recall after a very long period of time away... and I can't get it to run anymore. This is the output:

java.lang.NullPointerException
        at org.jtrfp.trcl.core.Texture.<init>(Texture.java:85)
        at org.jtrfp.trcl.core.Texture.<init>(Texture.java:90)
        at org.jtrfp.trcl.core.Texture.subTexture(Texture.java:97)
        at org.jtrfp.trcl.obj.TunnelSegment.createModel(TunnelSegment.java:144)
        at org.jtrfp.trcl.obj.TunnelSegment.<init>(TunnelSegment.java:48)
        at org.jtrfp.trcl.Tunnel.buildTunnel(Tunnel.java:125)
        at org.jtrfp.trcl.Tunnel.<init>(Tunnel.java:70)
        at org.jtrfp.trcl.flow.Mission.newTunnel(Mission.java:201)
        at org.jtrfp.trcl.TunnelInstaller.<init>(TunnelInstaller.java:32)
        at org.jtrfp.trcl.flow.Mission.go(Mission.java:113)
        at org.jtrfp.trcl.core.TR.recursiveMissionSequence(TR.java:415)
        at org.jtrfp.trcl.core.TR.startMissionSequence(TR.java:408)
        at org.jtrfp.trcl.flow.RunMe.main(RunMe.java:52)
java.lang.NullPointerException
        at org.jtrfp.trcl.core.Texture.<init>(Texture.java:85)
        at org.jtrfp.trcl.core.Texture.<init>(Texture.java:90)
        at org.jtrfp.trcl.core.Texture.subTexture(Texture.java:97)
        at org.jtrfp.trcl.obj.TunnelSegment.createModel(TunnelSegment.java:144)
        at org.jtrfp.trcl.obj.TunnelSegment.<init>(TunnelSegment.java:48)
        at org.jtrfp.trcl.Tunnel.buildTunnel(Tunnel.java:125)
        at org.jtrfp.trcl.Tunnel.<init>(Tunnel.java:70)
        at org.jtrfp.trcl.flow.Mission.newTunnel(Mission.java:201)
        at org.jtrfp.trcl.TunnelInstaller.<init>(TunnelInstaller.java:32)
        at org.jtrfp.trcl.flow.Mission.go(Mission.java:113)
        at org.jtrfp.trcl.core.TR.recursiveMissionSequence(TR.java:415)
        at org.jtrfp.trcl.core.TR.startMissionSequence(TR.java:408)
        at org.jtrfp.trcl.flow.RunMe.main(RunMe.java:52)
java.lang.NullPointerException
        at org.jtrfp.trcl.core.Texture.<init>(Texture.java:85)
        at org.jtrfp.trcl.core.Texture.<init>(Texture.java:90)
        at org.jtrfp.trcl.core.Texture.subTexture(Texture.java:97)
        at org.jtrfp.trcl.obj.TunnelSegment.createModel(TunnelSegment.java:144)
        at org.jtrfp.trcl.obj.TunnelSegment.<init>(TunnelSegment.java:48)
        at org.jtrfp.trcl.Tunnel.buildTunnel(Tunnel.java:125)
        at org.jtrfp.trcl.Tunnel.<init>(Tunnel.java:70)
        at org.jtrfp.trcl.flow.Mission.newTunnel(Mission.java:201)
        at org.jtrfp.trcl.TunnelInstaller.<init>(TunnelInstaller.java:32)
        at org.jtrfp.trcl.flow.Mission.go(Mission.java:113)
        at org.jtrfp.trcl.core.TR.recursiveMissionSequence(TR.java:415)
        at org.jtrfp.trcl.core.TR.startMissionSequence(TR.java:408)
        at org.jtrfp.trcl.flow.RunMe.main(RunMe.java:52)
java.lang.NullPointerException
        at org.jtrfp.trcl.core.Texture.<init>(Texture.java:85)
        at org.jtrfp.trcl.core.Texture.<init>(Texture.java:90)
        at org.jtrfp.trcl.core.Texture.subTexture(Texture.java:97)
        at org.jtrfp.trcl.obj.TunnelSegment.createModel(TunnelSegment.java:144)
        at org.jtrfp.trcl.obj.TunnelSegment.<init>(TunnelSegment.java:48)
        at org.jtrfp.trcl.Tunnel.buildTunnel(Tunnel.java:125)
        at org.jtrfp.trcl.Tunnel.<init>(Tunnel.java:70)
        at org.jtrfp.trcl.flow.Mission.newTunnel(Mission.java:201)
        at org.jtrfp.trcl.TunnelInstaller.<init>(TunnelInstaller.java:32)
        at org.jtrfp.trcl.flow.Mission.go(Mission.java:113)
        at org.jtrfp.trcl.core.TR.recursiveMissionSequence(TR.java:415)
        at org.jtrfp.trcl.core.TR.startMissionSequence(TR.java:408)
        at org.jtrfp.trcl.flow.RunMe.main(RunMe.java:52)
java.lang.NullPointerException
        at org.jtrfp.trcl.core.Texture.<init>(Texture.java:85)
        at org.jtrfp.trcl.core.Texture.<init>(Texture.java:90)
        at org.jtrfp.trcl.core.Texture.subTexture(Texture.java:97)
        at org.jtrfp.trcl.obj.TunnelSegment.createModel(TunnelSegment.java:144)
        at org.jtrfp.trcl.obj.TunnelSegment.<init>(TunnelSegment.java:48)
        at org.jtrfp.trcl.Tunnel.buildTunnel(Tunnel.java:125)
        at org.jtrfp.trcl.Tunnel.<init>(Tunnel.java:70)
        at org.jtrfp.trcl.flow.Mission.newTunnel(Mission.java:201)
        at org.jtrfp.trcl.TunnelInstaller.<init>(TunnelInstaller.java:32)
        at org.jtrfp.trcl.flow.Mission.go(Mission.java:113)
        at org.jtrfp.trcl.core.TR.recursiveMissionSequence(TR.java:415)
        at org.jtrfp.trcl.core.TR.startMissioGetting resource: DATA\terra-t2.def

nSequence(TR.java:408)
        at org.jtrfp.trcl.flow.RunMe.main(RunMe.java:52)
java.lang.NullPointerException
        at org.jtrfp.trcl.core.Texture.<init>(Texture.java:85)
        at org.jtrfp.trcl.core.Texture.<init>(Texture.java:90)
        at org.jtrfp.trcl.core.Texture.subTexture(Texture.java:97)
        at org.jtrfp.trcl.obj.TunnelSegment.createModel(TunnelSegment.java:144)
        at org.jtrfp.trcl.obj.TunnelSegment.<init>(TunnelSegment.java:48)
        at org.jtrfp.trcl.Tunnel.buildTunnel(Tunnel.java:125)
        at org.jtrfp.trcl.Tunnel.<init>(Tunnel.java:70)
        at org.jtrfp.trcl.flow.Mission.newTunnel(Mission.java:201)
        at org.jtrfp.trcl.TunnelInstaller.<init>(TunnelInstaller.java:32)
        at org.jtrfp.trcl.flow.Mission.go(Mission.java:113)
        at org.jtrfp.trcl.core.TR.recursiveMissionSequence(TR.java:415)
        at org.jtrfp.trcl.core.TR.startMissionSequence(TR.java:408)
        at org.jtrfp.trcl.flow.RunMe.main(RunMe.java:52)
Getting resource: DATA\terra-t2.pup
Getting resource: ART\CHECK1.RAW
Getting resource: MODELS\JUMP-PNT.BIN
Recognized as animation control file.
Start position set to [D@11c7e4d
Building atlas texture...
Finalizing global U/V coordinates...
        ...Done.
Allocating 4096x4096 shared texture in client RAM...
        ...Done.
Assembling the texture palette...
        ...Done.
Creating a new OpenGL texture for texture palette...
Creating GL Texture...
...Done.
Uploading texture...
==== SHOWSTOPPER ====
java.util.concurrent.ExecutionException: javax.media.opengl.GLException: Thread[
glExecutorThread,6,main] glGetError() returned the following error codes after a
 call to glTexImage2D(<int> 0xDE1, <int> 0x0, <int> 0x8056, <int> 0x1000, <int>
0x1000, <int> 0x0, <int> 0x1908, <int> 0x1401, <java.nio.Buffer> java.nio.Direct
ByteBuffer[pos=0 lim=67108864 cap=67108864]): GL_OUT_OF_MEMORY ( 1285 0x505),
        at java.util.concurrent.FutureTask.report(FutureTask.java:122)
        at java.util.concurrent.FutureTask.get(FutureTask.java:188)
        at org.jtrfp.trcl.core.TRFutureTask.get(TRFutureTask.java:24)
        at org.jtrfp.trcl.gpu.GLTexture.setTextureImageRGBA(GLTexture.java:51)
        at org.jtrfp.trcl.core.Texture.finalize(Texture.java:379)
        at org.jtrfp.trcl.flow.Mission.go(Mission.java:130)
        at org.jtrfp.trcl.core.TR.recursiveMissionSequence(TR.java:415)
        at org.jtrfp.trcl.core.TR.startMissionSequence(TR.java:408)
        at org.jtrfp.trcl.flow.RunMe.main(RunMe.java:52)
Caused by: javax.media.opengl.GLException: Thread[glExecutorThread,6,main] glGet
Error() returned the following error codes after a call to glTexImage2D(<int> 0x
DE1, <int> 0x0, <int> 0x8056, <int> 0x1000, <int> 0x1000, <int> 0x0, <int> 0x190
8, <int> 0x1401, <java.nio.Buffer> java.nio.DirectByteBuffer[pos=0 lim=67108864
cap=67108864]): GL_OUT_OF_MEMORY ( 1285 0x505),
        at javax.media.opengl.DebugGL4bc.checkGLGetError(DebugGL4bc.java:28003)
        at javax.media.opengl.DebugGL4bc.glTexImage2D(DebugGL4bc.java:13040)
        at org.jtrfp.trcl.gpu.GLTexture$2.call(GLTexture.java:61)
        at org.jtrfp.trcl.gpu.GLTexture$2.call(GLTexture.java:51)
        at java.util.concurrent.FutureTask.run(FutureTask.java:262)
        at org.jtrfp.trcl.core.ThreadManager$2$1.run(ThreadManager.java:136)
        at java.lang.Thread.run(Thread.java:744)
======================
@cjritola
Copy link
Member

cjritola commented Jun 1, 2014

Thanks for the catch:

Noted the NullPointerException, found the issue causing it and committed fixes. This may or may not be related to the showstopper at the bottom. Running out of memory is not realistic; clearly a malfunction in the program. You're using the same GPU as before?

If you can, please fetch to the newest update from git and clean install, let me know if the issue persists.

I've added a log dump feature to trcl which will dump all of the errors and messages to log.html which can be attached to this bug report. Often critical errors are caused by states created by less-critical errors early in the program's loading process.

@StrikerMan780
Copy link
Author

Now, It won't even get two seconds into it.

G:\sourcecode\TerminalRecall\terminal-recall>java -jar .\target\runme.jar STARTU
P.POD FURY3.POD TERRAN.LVL
Overriding the settings passed to this JVM. If you wish to manually set the JVM
settings, include the -Dorg.jtrfp.trcl.bypassConfigure=true flag in the java c
ommand.
Restarting JVM with:
java -Xmx1024M -Dorg.jtrfp.trcl.bypassConfigure=true -cp .\target\runme.
jar org.jtrfp.trcl.flow.RunMe STARTUP.POD FURY3.POD TERRAN.LVL
Error occurred during initialization of VM
Could not reserve enough space for object heap
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

@cjritola
Copy link
Member

cjritola commented Jun 1, 2014

Are you running from a 32-bit OS? It looks like you might be low on allocatable memory.
What happens when you run the following:

G:\sourcecode\TerminalRecall\terminal-recall>java -Dorg.jtrfp.trcl.bypassConfigure=true -jar .\target\runme.jar STARTUP.POD FURY3.POD TERRAN.LVL

@cjritola
Copy link
Member

cjritola commented Jun 1, 2014

If you continue to get the error with the above, do you get the error when you run:

java -version

?

Also, check if you have stray java processes running. When TRCL crashes the OpenGL threads sometimes get stuck which might be eating up your RAM. If you can't tell which java process is TRCL try rebooting. There were recent commits to help mitigate this but the issue is still being explored.

@StrikerMan780
Copy link
Author

java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) Client VM (build 24.51-b03, mixed mode, sharing)

@cjritola
Copy link
Member

cjritola commented Jun 1, 2014

Check for stray java processes from half-crashed TRCL runs. They might be eating up your ram.

@StrikerMan780
Copy link
Author

There are no stray processes, and I have 8gb of RAM with 78% of it free.

@StrikerMan780
Copy link
Author

When I switch to the 64-bit version of Java, it works, but very slowly. Performance is really spotty, and the whole issue where smoke caused a lot of slowdown is back. It always worked fine on the 32-bit version up to this point, where it now refuses to launch entirely.

@cjritola
Copy link
Member

cjritola commented Jun 7, 2014

Issue #44 has been created to address changes in framerate.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants
@cjritola @StrikerMan780 and others