Raytracing ioquake3

Stephan Reiter wrote into the mailing list with this amazing news (both videos are embedded after the break):

Hi everyone!
I’ve been working on a raytracing library during the last few months. Last week I was able to integrate it into the ioquake3 source code. This allows for switching between traditional rasterization and raytracing using a cvar. There are also some debug modes specific to the raytracing-mode.
I’ve posted two videos at YouTube showing Elite Force Raytraced, which is based on Thilo Schulz’s excellent Elite Force patch for ioquake3.
The 1st video focuses on raytraced reflections and other changes of the look: http://youtube.com/watch?v=jLFrP0c7VWw
The 2nd video is basically a record of a bot deathmatch: http://youtube.com/watch?v=C_6Icf2m_C4
I intend to release this code soon, but I plan to take some more time to polish it some more.
Comments are appreciated.
Keep up the good work, ioquake3-community!

    Update: Stephen added some screenshots:


17 responses to “Raytracing ioquake3”

  1. Stephan Reiter Avatar
    Stephan Reiter

    I’ve uploaded a series of screenshots to my picasa album. Take a look at them here: http://picasaweb.google.de/stephan.reiter/EliteForceRaytraced

  2. Hey, can we get some video of Urban Terror? What kind of FPS can you get at 320×200? That’s the resolution I used to play Quake at!!! 🙂
    Awesome project! Can’t wait to see this real time on one of my machines!

  3. khalsa Avatar

    Cool beans. What I would love to see Stephan is some comparison shots. E.g. Standard EF on left and raytraced EF on the right.

  4. Kumonko Avatar

    Can I make some questions?
    1 – There is no reflection//refraction in the movies, but there is reflection in pictures, what is your framerate at 320×240 with reflection enabled?
    2 – What about shadows?
    Keep up the good work. I hope someone do the same to q2.

  5. leGeorge Avatar

    hey stephan,
    you wrote that you are working on your own raytracing lib. have you ever suggested to use openrt (www.openrt.de)?

  6. Any news on the code release?

  7. awesome! cant wait to test it!

  8. Hardware companies suck! They sell us poo-in-a-box for $500+! Don’t believe me? Then look here: http://graphics.cs.uni-sb.de/SaarCOR/
    OpenRT is slow beyond comparison to what Stephan has done!
    As an example of requirements look here: http://graphics.cs.uni-sb.de/~sidapohl/egoshooter/

  9. I still want to play Urban Terror with this engine and at super low res to keep my frame rates up. Any word on when we can try it out ourselves? Thanks in advance!

  10. When will you release this code? I can’t wait to watch it in action on our own hardware and play around with it our selfs!

  11. Have some Problems to compile it -.-
    Can you upload an compiled Version of it in the best way on Windows but Linux is ok too thank you very much 😉

  12. I’m not sure what to do with a .diff. I assume that is some high level programming knowledge or something. Any chance I can just get a win32 binary? I’ll be on my best behavior!!!

  13. Would it be possible to port this to Tremulous? Namely a recent revision such as 1064?

  14. Hey, LLVM dev here.
    Just a note about optimization: There’s no reason to use both GVN and GCSE. GVN is both faster and generally better. For pass ordering, I’d suggest mirroring what is done in the opt tool for -std-compile-opts.

  15. New screenshots with correct lighting and improved reflections are available here: http://picasaweb.google.com/stephan.reiter/EliteForceRaytraced20