Hi !
Featured games (90)
games approved by the League of Dukes
Games in Showcase (777)
Games in Android Showcase (231)
games submitted by our members
Games in WIP (856)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Error Handeling  (Read 1273 times)
0 Members and 1 Guest are viewing this topic.
Offline jmguillemette
« Posted 2014-01-12 20:05:18 »

Normally i'm very diligent in my error handeling.. but this is because most of my coding is done in the business world where errors often result in situations where life pretty much continues and retrying is occasionally a valid approach... or if not possible someone needs to know how to solve the error right now.

so now my question..

im finding that most of the errors that i may have to account for my game coding are in fact show stoppers. Cant load my texture file.. or my shader.. ya.. then i really dont think we should continue. Lets stop here tell you about the problem and call it quits.

but if this is truely the case then i could just let these bubble up and handle then at my game engine layer as one catch, show error and end game.

how do you handle errors?


-=Like a post.. give the author a medal!=-
Offline Troubleshoots

JGO Knight

Medals: 36
Exp: 7-9 months

Damn maths.

« Reply #1 - Posted 2014-01-12 20:49:12 »

I'm not sure about what you're asking exactly, but I assume you're having trouble handling OpenGL errors. They're quite tricky to handle. Here's something that you can put in your game loop though:

if (GL11.glGetError() != GL11.GL_NO_ERROR) {
    // throw exception or print and exit

Why are all OpenGL tutorials written in Brainf**k?
Offline jmguillemette
« Reply #2 - Posted 2014-01-12 20:54:26 »

Let me attempt to be more clear.

Its the old bubble up debate.

When you encounter JAVA exception that need to be handled in your code. ( which hopefully you wont have too many instance of )
Do you

A) wrap a try catch block around it and do you best to handle / hide the errors if any occur


b) let them bubble up and just have a high level try catch handle them since in just about every case if an error happens in a game we are not going to try to handle them gracefully but rather show an error and end the game.

-=Like a post.. give the author a medal!=-
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline QQQ

Senior Newbie

Medals: 1

« Reply #3 - Posted 2014-01-12 21:27:30 »

When something fails, you have, I think, the following possibilities to react:
1. Recover (restart, reload, reconnect, etc.),
2. fallback (try again with default values, default renderer, etc.),
3. log the failure for future improvement,
4. do nothing.

In my private projects I don't have time to develop recovery strategies or implement alternative engines or offer alternative servers. My projects are small. I also don't expect the user to send me the error log. So I choose number 4 and rely more on testing.

To answer your question, I print the exceptions when they happen:
void foo() {
  try {
    // read from a file or similar
  } catch(Throwable t) {
Pages: [1]
  ignore  |  Print  

hadezbladez (290 views)
2018-11-16 13:46:03

hadezbladez (159 views)
2018-11-16 13:41:33

hadezbladez (291 views)
2018-11-16 13:35:35

hadezbladez (72 views)
2018-11-16 13:32:03

EgonOlsen (2151 views)
2018-06-10 19:43:48

EgonOlsen (2177 views)
2018-06-10 19:43:44

EgonOlsen (1366 views)
2018-06-10 19:43:20

DesertCoockie (1984 views)
2018-05-13 18:23:11

nelsongames (1626 views)
2018-04-24 18:15:36

nelsongames (2273 views)
2018-04-24 18:14:32
Deployment and Packaging
by mudlee
2018-08-22 18:09:50

Java Gaming Resources
by gouessej
2018-08-22 08:19:41

Deployment and Packaging
by gouessej
2018-08-22 08:04:08

Deployment and Packaging
by gouessej
2018-08-22 08:03:45

Deployment and Packaging
by philfrei
2018-08-20 02:33:38

Deployment and Packaging
by philfrei
2018-08-20 02:29:55

Deployment and Packaging
by philfrei
2018-08-19 23:56:20

Deployment and Packaging
by philfrei
2018-08-19 23:54:46 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‑
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!