Linux - Software This forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum. |
Notices |
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Are you new to LinuxQuestions.org? Visit the following links:
Site Howto |
Site FAQ |
Sitemap |
Register Now
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
|
|
04-12-2006, 05:07 AM
|
#1
|
LQ Newbie
Registered: Apr 2006
Posts: 10
Rep:
|
Screensaver problem
Hey there
Because my 3D accelerated graphics card is configured properly, all 3D screensavers are really working good.
There are also some simple 2D screensavers - like moving lines - those are okay.
But why do these "complex 2D" screensavers (for example FireworkX) stumble?
Thanks for any help
Florian
|
|
|
04-12-2006, 09:10 AM
|
#2
|
Member
Registered: Sep 2004
Location: Des Moines, Iowa
Distribution: Slackware, Mandriva, Debian derivatives, +BSD/ Solaris/ Minix/ plan9/ GNU/HURD...
Posts: 185
Rep:
|
Fireworks X, if I recall, uses the *top* end Open GL features like particles and smoke. Drawing a box is one thing. keeping track of a hundred glowing particles is another. Ditto for one that does fire in Open GL, and the tunnel one.
Every Linux distro I've seen had one or two screensavers that just didn't perform well. I try to change the options so they're not too demanding, and if that doesn't work, I just don't use that one.
|
|
|
04-12-2006, 09:43 AM
|
#3
|
LQ Newbie
Registered: Apr 2006
Posts: 10
Original Poster
Rep:
|
Ok, thanks...
But what do you mean with "*top* end Open GL features like particles and smoke"? Is there a way to enable this or install relevant modules?
|
|
|
04-12-2006, 10:11 AM
|
#4
|
Member
Registered: Sep 2004
Location: Des Moines, Iowa
Distribution: Slackware, Mandriva, Debian derivatives, +BSD/ Solaris/ Minix/ plan9/ GNU/HURD...
Posts: 185
Rep:
|
I *believe* it's more a matter of hardware memory-processor and RAM and such. My facts on OpenGL programming are shaky, however - for graphics on Linux, I quickly gravitated to SDL which does it all in software. OpenGL has been known to be generally clunky and memory-hogging all along. (Games like Tux Racer I notice are falling out of favor, for example)
Another example of a top-end (memory-intensive) process is reflective/transparent surfaces. They take much more time to render than solid plain surfaces. To understand why, see this? -> No, of course you can't, because it's too tiny :P but it's a photon, for every light source there are thousands of them flying off in all directions. Your computer doesn't have a physical space inside to show light, so the next best thing is to give a tiny piece of memory to each individual photon and track where they all go. Simpler with one light source falling on one surface, but add reflexion or transparency and now some of the photons make it through the transparent surface, some of them bounce off the refective surface, some of them get reflected back and forth so they multiply, some of them intersect and affect each other, yadda-yadda.
Same concept for many elements of anything moving around - it takes more memory to track it accurately. With the fireworks, you have many particles, each one gives off some light, and the explosion leaves a small cloud of smoke, which is a fine mist of semi-transparent particles.
When I say SDL (or Mesa3D, another software-rendering library) does it all in software, I mean that a Mesa3D program looks at what it needs to draw, and tells the computer that it will need that much memory and handles the rendering in the memory stack. OpenGL is lazy, it just shoves that kind of work off at the computer - "here, render this" - and doesn't care if your computer crashes trying to do it.
Boy, I hope I didn't screw up any details - any graphics wizzes out there care to fact-check me?
|
|
|
All times are GMT -5. The time now is 06:52 PM.
|
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.
|
Latest Threads
LQ News
|
|