Slashdot Mirror


Intel Shows Off Quake Wars, Ray Traced

An anonymous reader writes "At the Research@Intel Day 2008, Intel showed a ray-traced version of Enemy Territory: Quake Wars. Compared to the original game, a water with reflections and refractions and a physically correct glass shader were added. Also, a camera portal with up to 200 recursions to itself has been demonstrated. To show off this ongoing research in the topic of real-time ray tracing, a four-socket system with quad cores has been used that allowed rendering the enhanced visual effects in 1280x720 at 14-29 fps. Just two years before, early versions of Quake 4: Ray Traced ran only at 256x256 with 17 fps. Even though Intel's upcoming Larrabee will be primarily a rasterizer, the capabilities for also doing ray tracing on it should deliver interesting opportunities."

25 of 368 comments (clear)

  1. Voxels? by Xanavi · · Score: 4, Interesting

    What ever happened to voxels?

    1. Re:Voxels? by FelixGordon · · Score: 2, Interesting

      Still being pursued as a weird niche. I was absolutely amazed by Voxelstein 3D, http://voxelstein3d.sourceforge.net/

      It's "in the spirit" of Wolfenstein, and has totally destructible environments - for example you start in a little cell and using your knife you have to chip your way through the bars to get out. It's neat to see this alternative tech continue getting explored.

  2. Re:Why? by Keyper7 · · Score: 5, Interesting

    Actually, I believe real-time ray tracing open up some very interesting gameplay possibilities if people know how to use it.

    Imagine a FPS, for example, on which you could notice a sneaking bastard on an unusual angle behind you because you saw his reflection on the doorknob you were about to pull. Or maybe cursing at the newbie because he didn't pay attention to the position of a specific lamp and now your team is screwed because your shadows have been noticed.

    Then again, I think the whole FPS genre is saturated. Examples of other types of games are welcome here.

  3. Meh by saikou · · Score: 4, Interesting

    I know it's all computationally intensive and impressive in that aspect, but pictures in the article don't really look much better than your average videogame. Same triangular shapes, ugly, clearly "rendered" landscapes.

    I wonder if anyone tried to do hardware acceleration with, say, splines or something other than triangles.

    1. Re:Meh by JustinOpinion · · Score: 5, Interesting

      I've always wanted a realtime graphics engine based on something like the POV-ray ray-tracer (or other procedural modeling). The POV-ray syntax is all "exact". Rather than approximating shapes using subdivision into triangles, exact shapes are created by specifying things like "spheres" or "cylinder" or unions, intersections, and differences thereof. More complex objects can be specified by arbitrary mathematical equations, and complex sequences of operations (e.g. take a spline, sweep it along a path, intersect it with another shape, apply a certain matrix transform, ...). Having done some modeling both ways, I much prefer the "exactness" of procedural definitions, rather than approximation. (I inevitably wish I could go back and add resolution to a triangulation, but that isn't easy to do properly.)

      The neat thing is that the resulting objects (if properly defined) have "infinite" detail. The roughness on a surface, for instance, can be based on a noise function, so you can zoom into it without ever seeing triangulation or other artifacts.

      The obvious downside is that the computation here is intensive. Objects can be arbitrarily complicated. Calculating the intersection of a ray with a mathematically-defined surface involves very complex calculations. Rendering POV-ray scenes on modern hardware, for instance, can take minutes to days (depending on complexity).

      One upside is that the rendering can be tuned to available resources. On older hardware, the number of light-sources (or the intersection accuracy, etc.) can be reduced. This would mean that video game graphics would get arbitrarily "better and better" on newer hardware, without any need for someone to change the code. Having said all this... I think our hardware is not yet powerful enough to make this kind of thing practical. (There are some neat examples that have been coded, but as a general technique we're not there yet.)

  4. Ray Tracing and Pixel Shaders by Quabbe · · Score: 4, Interesting

    The images clearly show that they are using simple colour mapping for the textures (especially the helicoptor). What I want to know is, can pixel shaders be used with ray tracing?

  5. Re:Why? by Cheapy · · Score: 2, Interesting

    Well, in this case, there is no real story. ET:QW is a purely multiplayer game, unless you wanna play against only bots. It's quite playable too. (and runs on linux if you download something from id!)

    --
    Would you kindly mod me +1 insightful?
  6. Re:Height maps by Anonymous Coward · · Score: 1, Interesting

    Alpha Centauri's engine was a voxel-based one called "Caviar". Largely written in self-modifying assembly. Freaky.

  7. After close examination of the screenshots by Anonymous Coward · · Score: 2, Interesting

    Sorry, being an industry insider, I have to post as an anonymous coward here.

    There is no lighting, normal mapping, or material fidelity here. So this is a long way from being the quality of a final product, but it is a good demo and a start in the right direction.

  8. Re:Height maps by jonwil · · Score: 2, Interesting

    Command & Conquer Tiberian Sun and Command & Conquer Red Alert 2 used Voxel based 3d models for various vehicles in the game.

  9. Re:Why do i feel that ... by ArbitraryConstant · · Score: 3, Interesting

    Rasterization is JUST a cheap trick to make it look something like that, nothing else. Right, but it's really fast. It's faster than ray tracing is good.

    If you're waiting for humans to get rid of fast approximations when they're good enough, I hope you're patient.
    --
    I rarely criticize things I don't care about.
  10. Re:Congratulations Intel! by Cathoderoytube · · Score: 5, Interesting

    It's just a first step. Give them some time and I'm sure they'll be producing much more impressive stuff. Though I don't really give a rats ass about the applications real time raytracing has for video games. I'm more interested in what it can do for 3D graphics and animation. As it stands now in 3D you have to render everything out to see what it looks like properly lit. It'd mainly be a workflow improvement, but it'd be a welcome one. It's extremely annoying and time consuming to render out a test image that can take 10 minutes just to see how everything looks. That would also cleave through final render times. As it stands now with most projects it can take weeks or even months to render everything out. In theory with this a single desktop computer could be on par with a render farm. Suddenly all those jerks over at CORE won't be so smug.

    --
    I have nothing compelling to say
  11. Re:Why? by Anonymous Coward · · Score: 5, Interesting

    Fancy graphics don't make a good game, but poor graphics (as relative to the times) does make a game poorer.

    every ps3 owner tells me this same thing. Yet they always are at my house playing my Wii.

  12. blur of the line by Anonymous Coward · · Score: 2, Interesting

    If you look at the crytek engine and how it calculates screen ambient occlusion, then you find there is a mix of ray tracing and raster technology. For instance, its suspected, they simulate a ray tracing but against the depth buffer in a fragment shader to get ambient occlusion.

    By the way, please don't publish pictures on t.v. sets. It hurts the eyes.

    Ultimately, ray tracing is going to win but not at 13 frames a second.

  13. Re:Why do i feel that ... by blueg3 · · Score: 4, Interesting

    For classical optics, modeling the scene in either direction (castings rays from lightsources and only counting ones that hit the viewer vs. casting rays from the viewer and only counting ones that hit lightsources) is valid.

    I assume you didn't mean for "efficiently" to be an item in your list, which is the way you wrote it, but raytracers can do all of those things. (I'll make no claims about efficiency.)

    "But then again, it's a game, who cares about mathematicaly accurate reflections, when you can fake it close enough with reflection/refraction maps in a fraction of the processing time."

    That argument is no more valid that if you say "it's just a game, why don't you just do raycasting, which takes a fraction of the processing time". "Faking it close enough" isn't close enough; it's obvious that you're faking it, and it requires that you either live with it or design your game to minimize the impact of faking it.

  14. Re:Why? by Bodrius · · Score: 4, Interesting

    Not sure why this is only moderated as funny - it is quite true.

    But that's because the Wii graphics are not really poor - they're just adequate for the games people really play.

    Of course, if you try to put something like Assasin's Creed or GTA IV on the Wii - the graphics will suck and affect the sense of immersion and gameplay.

    But that's also why no one is really playing those kind of games in the Wii.

    --
    Freedom is the freedom to say 2+2=4, everything else follows...
  15. Re:Height maps by billcopc · · Score: 5, Interesting

    Self-modifying assembly is a long-lost art. If you have a strong stomach, a long long time ago I used to use QuickBasic as a ghetto scripting tool, loading in various assembler modules to do the dirty work. I later switched to Pascal.

    Back then, most of my hardware-control loops used self-modifying bits and bobs... sometimes to save a byte, sometimes to avoid a fetch. A few times I used true self-modifying code where the outer loops would reprogram the inner loops on-the-fly. It was the most CPU-efficient way to do realtime multichannel sound synthesis on a 486, and of course it gave me the opportunity to refer to it as a dynamic synth compiler :) The bitches were all over me, dawg!

    All that lovely code died a quick, silent death when Windows 95 came along. It wreaked all sorts of havoc and Windows would kill the app as soon as it tried to self-mod. It's a shame I didn't keep up with the skills, I could be one rich despicable virus writer today :)

    It's times like this I miss the 90's, I still have that 386 programming manual somewhere safe.

    --
    -Billco, Fnarg.com
  16. Re:Why? by William+Baric · · Score: 4, Interesting

    I bought Oblivion, looked at the pretty graphics and stop playing this extremely boring game pretty fast. I only did the mage's quests, the arena and went as far as to escort Martin to Bruma in the main quest. That's it. As I wanted to play a CRPG at the time, what I did was play again with Ultima Underworld, which is probably your definition of "eyesore".

    Personally, after countless bad experience, I'm to a point where I'm very worry with good graphics. I almost automatically associate good graphics with poor gameplay and I tend to simply overlook those games.

    As an example, a year and a half ago I discovered the Gothic series with Gothic 3. It was a fun game, much better than Oblivion, but I also got bored with the game after a while. I read a lot that the previous title were better, so I bought a copy of Gothic 1 on ebay. Of course, graphics were a lot worse, but the game was also a lot better and it was one of the few games I finished. I also bought Gothic Universe simply to have Gothic 2 NOTR.

    Of course, the same game would be better with good graphics than with bad graphics, but graphics are still secondary to gameplay. I'd prefer an "eyesore" with good gameplay than a beauty with an average gameplay.

  17. Re:Why? by billcopc · · Score: 4, Interesting

    I fail to see why we can't have both.

    I loves me a good plot, with rich writing and character development, but I also loves me some 27" max-detail graphical virtuosity. Mass Effect is getting a lot of love from me right now, because it delivers a healthy balance of plot and visuals.

    Crysis, of course, is a rather sexual experience at 1920x1200. Every now and then I'll perch myself atop a cliff and gaze at the breathtaking imagery... then I go back into cloak mode and snipe the mofos back to hell! I'm not a big FPS fan, but Crysis is one of the few titles that give me a sense of immersion, like I'm actually a gun wielding superhero instead of some synthetic alien cannon fodder.

    Would I play Crysis if it looked like ass ? Probably not, because that particular experience hinges on the realistic graphics and all the fine details.

    Would I play Quake if it looked like ass ? Hell yes, I would! In fact I did, it was called Quake 1-2-3... They're ghetto by today's standards, but the action was solid and I happily pissed away countless hours railing goddamned teenagers on instagib maps. Just give me a pixel to shoot at and I'm set!

    I'm trying to think of a gorgeous game that sucked... memory is failing me right now, but there have been many. Actually, at the risk of getting flamed to death, I'd say Oblivion was one such stinker (for me). The graphics were pretty nice for its time, but I found the actual gameplay sluggish and clumsy. The sandbox concept worked well, but I spent most of my time walking around those stupid hell dimensions looking for stuff to kill, and then dicking around towns waiting for some NPC to come out of hiding at a specific time of day. Much like GTA, I quickly got bored of the storyline and started playing randomly, killing innocents and all the guards I could handle. I stopped playing it after maybe two weeks... epic fail.

    --
    -Billco, Fnarg.com
  18. Re:Why? by jomiolto · · Score: 3, Interesting

    Some very nominal special purpose hardware would eat this alive. Remember intel is using unaccelerated general purpose processors to do this! Exactly, this is what most people seem to forget. While 4 quad-cores (quad quad-core?) might seem like a lot, it is nothing compared to the recent GPUs that have hundreds of cores. If a specialized ray tracing processor could get you even half of the processing power of a single core of these general purpose CPUs (with a fraction of the cost/power usage), imagine what 100-200 of these on a GPU could do... (Keep in mind that ray tracing scales extremely well when you add processing units).
  19. Re:Why? by Yetihehe · · Score: 4, Interesting

    And now imagine a beowulf cluster of those! I'm actually working on it, Amazon EC2 is going to really rock for some advertisers. Imagine walking through newly designed casino, with all visual details. Only thing required would be laptop with internet connection sufficient for hdtv stream. Heck, you could even send small video to iphone. Imagine realtime raytracing on beowulf cluster with output to your iphone...

    --
    Extreme Programming - Redundant Array of Inexpensive Developers
  20. Re:Height maps by xded · · Score: 3, Interesting

    All that lovely code died a quick, silent death when Windows 95 came along. It wreaked all sorts of havoc and Windows would kill the app as soon as it tried to self-mod. It's a shame I didn't keep up with the skills, I could be one rich despicable virus writer today :) Actually, to use self modifying code in win32, you just have to mark the PE code sections as writable, since by default they're just readable and executable.

    And self modifying code is still used today on some software protections, not just viruses.
  21. Re:Height maps by Anonymous Coward · · Score: 2, Interesting

    Embedded programming is a booming business with no new programmers coming in, because all the college graduates want to be game developers and web designers.

  22. Re:Height maps by eulernet · · Score: 2, Interesting

    Self-modifying assembly is a long-lost art It was not an art. This just lead to ugly and buggy code.

    The clean way to do this is to generate code in data memory, lock the data memory as executable memory, and execute the code, it will run fine in Windows (I'm using this technique right now on computer crossword filling).

    Assembly language has not really disappeared.
    It's just hidden under a lot of layers.
    For example, you can use dynamic JIT compilers, like LUA, which generates inline assembly code, and if you know well the language and the assembly generation, you can write some pretty code.
  23. Embedded programming and GBA by tepples · · Score: 3, Interesting

    Embedded programming is a booming business with no new programmers coming in, because all the college graduates want to be game developers I learned embedded programming because I wanted to develop games. The Game Boy Advance and similar handhelds act a lot more like embedded systems than like a modern PC.