Slashdot Mirror


Students Evaluate Ray Tracing From Developers' Side

Vigile writes "Much has been said about ray tracing for gaming in recent weeks: luminaries like John Carmack, Cevat Yerli and NVIDIA's David Kirk have already placed their flags in the ground but what about developers that have actually worked on fully ray traced games? PC Perspective discusses the benefits and problems in art creation, programming and design on a ray traced game engine with a group of students working on two separate projects. These are not AAA-class titles but they do offer some great insights for anyone considering the ray tracing and rasterization debate."

6 of 84 comments (clear)

  1. Debate? by Vectronic · · Score: 4, Informative

    "...ray tracing and rasterization debate"

    I don't think there is any debate at all, RayTracing is by far superior, there is just the problem of computing power.

    Anyone (perhaps ask the modelers for the games) who deals with 3D software, knows the benefits of RayTracing for simulating reality (Reflections, Ambient Occlusion, Sub-Surface Scattering, etc)

    And once computing power reaches that level it will even speed up the process of creating games because you can let the RayTracing take care of shadows, reflections, highlights, etc instead of manually mapping them.

    Take a look at anything LightWave, Maya, 3Dsmax, Softimage, Blender, etc spits out of its render engines, or visual effects in recent movies... granted, that's (as stated a few times in the discussion) years away... but, I don't think anyone is arguing against RayTracing.

    (-1 Bastard) ...but...whatever, ive been waiting for real-time RayTracing for years even just within my own 3D applications, nevermind games...

    1. Re:Debate? by forkazoo · · Score: 2, Informative

      Take a look at anything LightWave, Maya, 3Dsmax, Softimage, Blender, etc spits out of its render engines, or visual effects in recent movies... granted, that's (as stated a few times in the discussion) years away... but, I don't think anyone is arguing against RayTracing.

      None of the programs you mentioned is a pure ray tracer. All of them can be used to make images which involve ray tracing, but a lot of great work has been done in those programs without tracing any rays. So, probably not the best example. RenderMan, for example, only added support for tracing rays relatively recently. In most production renderers, you will have simple scan-line style rasterisation done for initial view determination, and rays will only be traced for secondary rays on materials, and shadow hit testing on some lights.

      Coming from a background in animation (which did involve dealing with scenes that involved ray tracing), and some OpenGL programming, these discussions are interesting, but it is strange how heated the debates get, and how people start citing rather nonsensical examples of things.

      If you want to cite an example of a fully ray traced scene, mention anything that came out of POV Ray. It's a pure ray tracer.

    2. Re:Debate? by j1m+5n0w · · Score: 2, Informative

      If you want to do it right, there's actually quite a bit more to it than you're implying. But I do agree that this isn't exactly a show-stopper for ray tracing. Yes, you need a way to plot pixels on the screen, but it's not like that's an unsolved problem. You could probably even do the necessary filtering with a fragment program and give the video card something useful to do between calls to glVertex2f().

  2. Re:What's the point ... by UserChrisCanter4 · · Score: 2, Informative

    Head on over here to see what a raytraced Enemy Territory: Quake Wars looks like. Pay particular attention to the water and windows.

    Now read everyone else's responses and realize that raytracing is a super-easy way to take advantage of multiple cores and simplify your code at the same time. All the crazy stunts and tricks you have to pull to get some of those lighting and reflection tricks can be thrown out the window, and the extra time could be used to ::crosses fingers:: make better gameplay. We can dream, right?

    Of course, that raytraced ET: Quake Wars is running in a 16-core system at 1280x720 and posts between 15 and 30 fps. We've got a ways to go, obviously. On the flipside, you'd pay more for a single core system five years ago than you do for a quad-core today, so we're rapidly gaining on it.

    If things go as many in the industry are predicting, though, scaling up the power of a single core just isn't going to happen like it used to. Throwing a bunch of cores in a system does seem like the way computing is going, at least at this juncture. In other words, the cores will be there anyway, why not make use of them?

    Finally, with the rise of GPGPU and the NVidia/ATI-specific counterparts, I imagine it actually wouldn't be too difficult to allow your standard GPU to assist in raytracing on newer titles while still handling legacy games. (I might be talking out of my ass on this one, so any graphics nerds, please feel free to correct me there).

    I sympathize with your point about the intermittent step backwards. I doubt that it will happen that way; likely, rasterized graphics will be around for quite some time with a gradual ceding to raytraced graphics as 8 core and higher systems become more commonplace. I also agree that graphics look damned good, and I myself have expressed similar views about the costs and obstacles inherent in going even more detailed. In the meantime, though, you can't blame developers or hardware companies for trying to avoid running into the wall of the declining improvement in CPU/GPU speeds. As I said earlier, if the cores are going to be there anyway then we might as well use them.

  3. Re:What's the point ... by Solra+Bizna · · Score: 2, Informative

    Actually, no.

    Rasterization is not embarrassingly parallel in the same way that raytracing is. Distributing tasks among those 800 "stream processors" is exceedingly complicated, because the underlying "task" involves iterating over every pixel that intersects with a given triangle rather than (as in raytracing) iterating over every triangle that could intersect with a given pixel.

    -:sigma.SB

    --
    WARN
    THERE IS ANOTHER SYSTEM
  4. Re:What's the point ... by argent · · Score: 2, Informative

    But raytracing doesn't do realistic lighting at all!

    It does more realistic lighting than rasterization, and it definitely will do caustics... you just need to shoot more rays. Whether you can shoot enough rays in realtime or not, well, that's where you need the speedup from an RPU.

    "Global Illumination" isn't a lighting effect, it's a heuristic for rasterizing that fakes some effects that require additional rays to calculate. In some cases that's ludicrously many rays, in others it's not. There's also some very good (albeit still expensive) techniques to simulate radiance and other "global illumination" effects in raytracing. Again, how much you can do in realtime depends on your resources. And, again, an RPU would be a major win.