1
$\begingroup$

For an art project, I need to make an OpenGL visualization run for at least 4 weeks. Is this possible? I can pretty much choose the rest of the hardware and software.

$\endgroup$
5
$\begingroup$

Opengl doesn't care how long it has been running.

However there are a few other challenges with long running applications in general:

  1. memory leaks, both normal ones and opengl resources.

  2. lack of precision after incrementing a float to a big number. After 4 weeks your millisecond counter will be at 2.4 billion which is well beyond the point where integers cannot be expressed exactly in a single precision floating point number. Make sure that those numbers are wrapped down to a smaller value explicitly.

$\endgroup$
3
$\begingroup$

Yes, of course. The duration it has to run for doesn't make much difference. Your Android smartphone's main GUI is OpenGL, and phones typically have an uptime longer than four weeks. Air Traffic Control centres might use OpenGL SC (the subset of GL for safety-critical applications) continuously for months or years.

If you do have free choice of software, OpenGL is probably not the thing you're concerned about. Artists often use Processing for art projects, because it's simple and lets you get to drawing stuff on the screen with minimal 'boilerplate' code. It's very nice for drawing maths-as-art: particle systems, L-systems, strange attractors, &c. For a 3D scene that's supposed to look like the real world, Unity 3D might be a good choice: it's a game engine that handles all the use of OpenGL or DirectX for you, so you can create the scene you want to draw without much programming.

If you have more recommendation- or opinion-based questions about what might be useful to look at, maybe drop into our chat room and be ready to tell us what kind of art project you're making.

$\endgroup$
2
$\begingroup$

To make an application, OpenGL or not, run for extended time safety-critical applications are mostly built to restart on error, be it a driver bug, your application is broken, or hardware failure. If function during the downtime is required you need redundnacy. In your case maybe start multiple sessions of the same program, or even having dual computers running the same program outputing to the same display.

OpenGL is no different from other applications, BUT vendors optimize and test for certain kinds of customers. Your scenario is not common so be suspicious.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.