Real-time raytracing on Quake 3

  • Two Factor Authentication is now available on BeyondUnreal Forums. To configure it, visit your Profile and look for the "Two Step Verification" option on the left side. We can send codes via email (may be slower) or you can set up any TOTP Authenticator app on your phone (Authy, Google Authenticator, etc) to deliver codes. It is highly recommended that you configure this to keep your account safe.

Derelan

Tracer Bullet
Jul 29, 2002
2,630
0
36
Toronto, Ontario
Visit site
As a scientific study, a group of students at Saarland University developed, in cooperation with Erlangen University, the worlds first completly ray traced 3D FPS.

To skip the task of designing a game, they chose Quake 3 for their base.

The game runs at approximately 20fps on a decent, modern computer. A 36 GHz array of 20 AMD 2000+'s, 512x512 resolution, with 4xFSAA)

Features include:
  • realtime 3d raytrace engine
  • realtime per-pixel shadows
  • possible resolution up to 16384x16384x32
  • real glass with reflection and refraction (thanx to Tim Dahmen)
  • real mirrors
  • colored realtime per-pixel shadows (thanx to Tim Dahmen)
  • realtime soft shadows
  • colored lights
  • flashlight
  • ground fog
  • some walls replaced with high polygon displaced walls
  • reflecting water
  • mipmapping
  • wireframe mode
  • B/W filter
  • camera portals

flashlight.JPG

softcoloredshadow.JPG


Everything seen here and a raytracing movie can be found at:
http://graphics.cs.uni-sb.de/~sidpohl/egoshooter/
 

jaunty

Active Member
Apr 30, 2000
2,506
0
36
I garauntee you it's not proper raytracing. Just some smart-arse workaround that looks vaguely like raytracing.

Reference; See: Scope lenses in FarCry
 

Ryan

banned
May 27, 2001
1,194
0
0
37
Puyallup WA
Visit site
while the tech sounds pretty impressive, i gotta say the screens dont look as good as most lighting engines out today, that use...normal real time lighting engines=/ cool anyways tho , good to see progress :)

:edit: havent seen the video (56k) is it pretty impressive?
 
Last edited by a moderator:

ThunderChunky

L337 Cube H@X0®
Jul 1, 2000
1,086
0
0
Sorry to burst your all knowing bubble, jaunty, but Real Time Ray tracing is rapidly approaching reality. It is entirely possible that this is actual raytracing. While it would be nice if they had included a distinctive raytracing demo (occluded light illuminating a room through indirect lighting), it still looks like it is. Furthermore, most real time engines will smooth polygons, which this one doesn't (look at the hard edges on the models, which aren't present in Quake3), which is probably an optimization for the real time raytracer.

I'd be really curious to see the code for this. Not for the raytracer, as those are pretty much standard, but how they actually resolved the communication problem between a Quake3 environment and 20 seperate machines.

-tc
 

Crowze

Bird Brain
Feb 6, 2002
3,556
1
38
40
Cambridgeshire, UK
www.dan-roberts.co.uk
Interesting, although the Q3 engine wouldn't be my first choice of engines to do this with. I seem to recall some project team that was making a hardware realtime raytracer that could, with their test scenes at least, get 30fps at 800x600. I can't find their site any more though :(.
 

Derelan

Tracer Bullet
Jul 29, 2002
2,630
0
36
Toronto, Ontario
Visit site
ThunderChunky said:
While it would be nice if they had included a distinctive raytracing demo (occluded light illuminating a room through indirect lighting)

I would assume all that radiosity and photon tracing and stuff would be their next project, but yes it really is real raytracing.

The video basically just shows everything in motion, its not impressive unless you see it first hand.

Interesting, although the Q3 engine wouldn't be my first choice of engines to do this with. I seem to recall some project team that was making a hardware realtime raytracer that could, with their test scenes at least, get 30fps at 800x600. I can't find their site any more though .

This team did mention (in some garbled up form of english) that their raytracer wasn't as powerful as a 1ghz machine with a hardware raytracer GPU.
 

ThunderChunky

L337 Cube H@X0®
Jul 1, 2000
1,086
0
0
The Quake3 engine is one of the few widely available engines designed for OpenGL, so it's sort of easy to intercept the OpenGL function calls by replacing the dll and implement your own rendering code. I'm assuming this is probably what they did, as it's incredibly doubtful that they had access to the pure source.
 

Derelan

Tracer Bullet
Jul 29, 2002
2,630
0
36
Toronto, Ontario
Visit site
ThunderChunky said:
The Quake3 engine is one of the few widely available engines designed for OpenGL, so it's sort of easy to intercept the OpenGL function calls by replacing the dll and implement your own rendering code. I'm assuming this is probably what they did, as it's incredibly doubtful that they had access to the pure source.

They used the demo.
 

Shrap

Beaver
Oct 29, 2000
1,013
0
0
You know what would be fun with this technology ? Scopes ! You would just have to add the correct lenses in the 3d model so that the light would follow the same pattern that the RL light follows and BINGO. True Scopes !
 

Derelan

Tracer Bullet
Jul 29, 2002
2,630
0
36
Toronto, Ontario
Visit site
Shrap said:
You know what would be fun with this technology ? Scopes ! You would just have to add the correct lenses in the 3d model so that the light would follow the same pattern that the RL light follows and BINGO. True Scopes !

Thankyou shrap, you just gave me a huge idea for a project in 3dsmax. Fun with ray-tracing doesn't have to be real-time ;)
 

jaunty

Active Member
Apr 30, 2000
2,506
0
36
Shrap said:
You know what would be fun with this technology ? Scopes ! You would just have to add the correct lenses in the 3d model so that the light would follow the same pattern that the RL light follows and BINGO. True Scopes !


I've set up such a thing in 3ds Max before. I couldn't get it to work properly, but this was more because of my not setting the lenses correctly. I did manage to conclude that it's totally 100% possible, so long as you have the patience to adjust things to within a fraction of a millimetre. (I do not. If it isn't a model of a gun, it never lasts more than maybe 20 minutes in my 3ds Max viewports)

Edit: Chunky; Real time anything is possible if you're prepared to dish out enough cash for the hardware to make it happen.
 
Last edited:

Crowze

Bird Brain
Feb 6, 2002
3,556
1
38
40
Cambridgeshire, UK
www.dan-roberts.co.uk
That's not really the point. Of course it's true to an extent, but that's just a flawed way of thinking. Doing something in real-time is a lot more dependant on reducing the complexity of the task i.e. writing better algorithms.
 

Derelan

Tracer Bullet
Jul 29, 2002
2,630
0
36
Toronto, Ontario
Visit site
Alright i just tried my raytraced scope in 3dsmax and i concluded that its a pain in the ass to do. Damn lenses. Also, i noticed that in 3dsmax, nothing is ever out of focus due to raytracing, its always distorted and in focus.