Quake III Gets Real Time Ray-Tracing Treatment
Ozh writes "Did you ever wonder what you could do with a cluster of 20 AMD XP 1800s? Some German students and videogame fans did, and their answer has been what they call 'ray-tracing egoshooters', an entirely raytraced game engine which 'runs about 20 fps@36 GHz in 512x512 with 4xFSAA'. The first game to get this treatment is Quake 3 Arena : the screenshots look slightly better than the original 3D engine but the video (56 Mb, 3'19) is quite dramatic."
Its a bit hard to tell from the page whether this makes full use of the GPUs per box in the cluster like Chromium
They do also mention that it can render entirely in software over the network at 20FPS - not bad considering that each fram portion of the data has to pass across presumable 2 machines before it is passed to the display!
Ripping an new rectum in the fabric of spacetime.
That's pretty nice. Unfortunately most of the effect can be simulated using tricks and still run on a regular computer. Especially with all the stuff you can do on the GPU now.
They need to soften the shadows also. Either by using tricks or radiosity. Right now it looks kinda meh...
Interesting effort though.
So my question is, for those of us who don't know the first thing about 3D graphics, what are the pros and cons of a raytracing GPU, compared to the polygon pushers we currently know and love.
Sticking feathers up your butt does not make you a chicken - Tyler Durden
Is it just me, or did that look much worse than standard Q3?
Q3 isn't designed, let alone optimized, for raytracing, so that's not a major surprise, but I still expected an improvement, not a downgrade.
I think a custom demo is called for.
The tech sure is hella cool, though.
Bah, google it. I'm talking about games I saw years ago, I don't memorize the URLs of every page I visit so I will have instant access to it many years down the road.
A quick google search turned up http://www.realstorm.com/ which is a realtime raytracing engine. A very impressive one might I add. It is able to render at 512x512 in realtime on a single machine, and looks better than Q3RT to boot.
And some people 10 years ago thought that ray traced games were going to be on LAST generation CONSOLES.
... can be found here.
-- Contradictions only exist in thought - not in reality.
Okay i know raytracing provides far more realistic visual representations of a 3D modelled scene than actual scanline polygon rendering. But - and here comes the but - i miss a lot of things in this raytraced Quake movie. All the shadows are really really crisps, one would expect that when light bounces off walls and objects a few times its reflected light would soften those crisps shadows. E.g. it would result in softened gradual shadows.
;) )
I guess they limited the path of the ray they calculated so it bounced only two or three times off an object before they stopped calculating it. (If they stopped after one pass you wouldn't have seen those reflective glass balls like you did, which need multiple passes to look like they do).
I also miss colour bleeding on the surfaces. E.g. when you have - let's say - a white surface next to a red surface, some of the red will bleed on the white because light coming from the red surface will fall on the white surface and light it in a red hue. You would have seen this with a proper raytracing engine where the light bounces multiple times from an object and where the colour of the light is affected by the colour of the object.
I think those are the main reasons why the video doesn't look as realistic as i hoped for. (Then again how realistic is walking through a building where they have decorated the place with gruesome wallpaper taken from a horror movie and gigantic brains on mechanic spider legs walk around...
Let's make it somewhat more accurate by introducing another variable S, the screen size in pixels.
Polygonal: O(max(S, N))
Ray tracing: O(S log N)
Photons: O(max(S, P) log max(P, N))
Radiosity: O(max(S, N^2))
Note that if N ~= S polygons keep linear behaviour while ray tracing becomes linearithmic.