[quake3] Elite Force Raytraced

Stephan Reiter stephan.reiter at gmail.com
Tue Mar 4 14:30:00 EST 2008


I actually don't believe you, because you did a fabulous job with that 
patch. But on the other hand, not everybody is into raytracing. I wasn't 
until about two years ago, so ...

> But from what I have gathered, resolution seems to be a heavy factor on 
> framerate. What order of magnitude does the computational complexity rise 
> with higher resolutions?
The complexity rises linearly with the number of pixels rendered. But the 
really great thing about raytracing is, that it scales very well - almost 
linearly - with additional CPUs or CPU cores. And with Intel's new 
processors around the corner (8, 16, 32 cores!) we can really expect to get 
good performance out of this.

But I have to be honest: I don't think that raytracing will replace 
rasterization anytime soon. As long as rasterization can deliver the great 
illusions we see in recent AAA games, there's no need for accurate 
simulations of light transport. Faking reflections/refrections/etc. will be 
fine for the average gamer. It's an interesting field to do research in 
though. :-)

> By the way: as far as I gathered, most of the raytracing stuff is CPU 
> based. Are there any plans to load tasks to the GPU?
I actually tried that with a GeForce 7 in 2006 and gave a poster 
presentation at a raytracing conference. But the idea didn't turn out so 
well: With current GPU architectures there's simply too much performance 
wasted when communicating CPU<->GPU, especially read-backs are problematic 
(even with PCI-Express). A CPU-only implementation running on two cores 
outperformed the graphics card by a factor of 4-5. Using the GPU as an 
additional processing unit to the CPUs also yields a reduction in 
performance due to the associated overhead.

It might be a viable approach with GeForce 8 and 9 cards, especially with 
APIs like nVidias CUDA.

And indeed, EF is still fun to play! I used to work on a coop-mod for EF, 
but with the release of the single player source code it kinda lost its 
appeal. ;-)

Stephan

----- Original Message ----- 
From: "Thilo Schulz" <arny at ats.s.bawue.de>
To: <quake3 at icculus.org>
Sent: Tuesday, March 04, 2008 8:14 PM
Subject: Re: [quake3] Elite Force Raytraced

On Dienstag, 4. März 2008, Stephan Reiter wrote:
> I think it should be feasible to run this at 800x600 @ 30fps on any
> computer with a more or less up to date CPU. My computer is more than two
> years old and has a pretty limitting Athlon X2 3800 processor. So I really
> shouldn't be the one creating benchmarks here.

This sounds really cool. Please bear with me - whether you believe it or 
not -
I have little knowledge about OpenGL and rendering in general, let alone the
theory behind ray-tracing. But from what I have gathered, resolution seems 
to
be a heavy factor on framerate. What order of magnitude does the
computational complexity rise with higher resolutions?

> Btw, that floating head problem was an artifact of some jumbled up matrix
> calculations. So they're in no way related to your work and had already
> been fixed when the second video was recorded. I'll look into applying 
> your
> latest patch though, so thanks for that!

I have made a newer patch, that applies against the latest rev 1270.
http://thilo.kickchat.com/efport-progress/patches/quake3-ef_rev1270.diff

It does not have any significant changes since ioEF 1.37, just fixed the
conflicts.

> I really owe you a lot for creating such an excellent patch. I don't have
> Quake 3 and definitely wouldn't have bought it just to try my raytracer
> library. EF on the other hand is a mighty fine game and I'm glad I can 
> play
> it on Linux now, too. Thanks to you!

Thank you, I am really happy that you found and used my patch. That is what
Open Source is all about.
My motivation behind the patch really was so I could play it natively 
without
wine, and I still play it today from time to time even almost 8 years after
the game was released.

By the way: as far as I gathered, most of the raytracing stuff is CPU based.
Are there any plans to load tasks to the GPU?

-- 
Thilo Schulz




More information about the quake3 mailing list