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."

12 of 84 comments (clear)

  1. Re:What's the point ... by ZiakII · · Score: 3, Insightful

    I know this may not be a popular question, but what is the point with raytracing for games? We're finally getting to a level of technology with rasterization where we're producing visuals at a level which is "Good Enough" (or better) for practically every genre. Do we really need to get on the hardware treadmill for the next 10 years to get to a similar technology level to get slightly more realistic lighting and reflections?

    Yes, we do because everything that we do currently is just a hackish like system where we are using programing tricks and other methods to get it to look realistic. Instead of a video card you would just need a faster cpu, which if we base off of moore's law won't be much longer.

  2. Re:What's the point ... by Ambiguous+Puzuma · · Score: 2, Insightful

    Raytracing is an "embarrassingly parallel" task that should scale well as desktop computers execute more and more code in parallel. Can the same be said about rasterizing?

  3. Re:What's the point ... by argent · · Score: 4, Insightful

    Realistic lighting allows you to use those clever algorithms in your head that you've learned over the past 20+ years in the real world, so when you see a flicker of a reflection or a change in the shadows in a darkened tunnel you can turn and blast the damn camper on the opposite rooftop before he nails you with his sniper rifle.

  4. I'd quibble. by jd · · Score: 4, Insightful
    Raytracing is superior to doing nothing, but conetracing, non-uniform conetracing and wavetracing are all superior to raytracing, and all but wavetracing benefit from adding in radiosity. The advantages of raytracing over all other methods are that it is totally parallelizable and can be implemented using a fairly simple set of algorithms, potentially allowing for a truly gigantic number of compute elements on a single die. One big headache, though, is that to get a significant visual improvement, you have to cast a large number of rays per pixel (or you can't do scatter properly) and you need multiple generations (ie: secondary light sources), where each generation needs to be processed twice - once for direct reflection, once for refraction. This would be fine, but it means different rays will take a different length of time to complete, which in turn means that to get smooth motion, you have to calculate the time for the slowest possible path and synchronize to that.

    Typically, however, games manufacturers do NOT mean "raytracing" when they say "raytracing". They mean basic rendering. ie: Applying of shaders and other simple colouring techniques. Renderman, the rendering package used to produce movies like Finding Nemo, uses rendering, not raytracing. Rendering is popular with movie producers because it's fast and "good enough". (Audiences differ on the subject, with plenty of people preferring model-based special-effects because the lighting is real and the reflections are correct - well, they'd better be!) My fear is that true raytracing and physically correct lighting models will be totally overlooked in favour of things that will be cheaper to produce and therefore make more money.

    --
    It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
  5. Re:What's the point ... by Anonymous Coward · · Score: 1, Insightful

    Yes.

    Any conceivable hardware architecture that is optimized for ray tracing will be even better at rasterization. It's a basic axiom, once you understand the way memory (has to) work.

  6. Re:Debate? by Anonymous Coward · · Score: 2, Insightful

    "...RayTracing is by far superior, there is just the problem of computing power."

    And then there's people like me, who would consider this statement to be self contradictory.

  7. Re:Debate? by Anonymous Coward · · Score: 3, Insightful

    You already have raytracing in games, just not in realtime. Why spend the computing power in realtime raytracing when you can bake the static lighting into PTMs (polynomial texture maps), or the dynamic lighting into spherical harmonics maps, and use these to reconstruct the illumination, including self-shadowing effects, with convincing effects, at a fraction of the cost?
    Lightmaps already take into consideration ambient occlusion, check q3map2 for instance, this is nothing new. As for reflections, no one will notice you're using environment mapping, this is specially true if the shaded objects aren't 100% smooth perfect mirror like surfaces - it's a pure waste of processing power.
    The only situation where you could see something obvious about raytracing, is in refraction - water, glass, etc...
    As for shadows, guess what's the 1st thing someone does when he/she finally has raytraced shadows > looks nice, how can i have blurrier shadows?
    And off you go, casting N rays to have basically the same effect you had with multiple shadow maps. This is not to say the existing technology is without faults, only that this raytracing issue seems to have finally caught up with games, and this discussion has been going on for the last +10 years in the traditional CG/VFX area and inevitably the result is always the same > fake the effect, and use raytracing where absolutely necessary.
    I don't see why things would be different in games, specially in games, where you have to save whatever processing power you have available, for more important things, such as maintaining a constant minimum fps ;)

  8. Art Direction by vertigoCiel · · Score: 2, Insightful

    If you haven't, go take a look at the screenshots in the article. Scroll up there, click on the link, and scroll down the page a bit.

    Seen them? Good. They demonstrate one thing very effectively: no matter what rendering engine you use, good art direction trumps technology, every time.

    These games are using "cutting edge" technology, and the article blathers on about how ray-tracing allowed them to use ridiculous amounts of triangles and have "complex lighting and shadows." But they look like crap.

    Contrast this with games like Twilight Princess, Super Mario Galaxy, Ico, Shadow of the Colossus, and Rez. All of them use rasterization on hardware between two and eight years old, but they look fantastic.

  9. Re:What's the point ... by robthebloke · · Score: 2, Insightful

    This is a somewhat rose tinted view of ray tracing. You can't simply throw each pixel onto a different stream processor and expect it to work. Whilst this works for throwing a different pixel at a different CPU core, this does not work with the stream processors we currently have available to us.

    The problem we have both in the cell, and in stream processors on a GPU is that you can't arbritrarily access large data sets. So, it is impossible to write any code for a triangle that allows it to fire off rays into the rest of the scene. End of story.

    Now, these things are possible, but, it requires a hell of a lot of hacking - i.e. using indices into textures, writing output data back into textures, copying that data to a vertex array.. etc etc etc.

    But, you have the exact same problems to overcome to get ray tracing to work on a stream processor, as you do with rasterisation. Those 800 stream processors you talk about, have to be running exactly the same code, have only a small amount of memory available to them, and are generally a PITA to get even the simplest code running.

    You talk about distributing frames across seperate PC nodes, but we've been doing that for years in renderman - using the exact same system you describe (via alfred typically). 99% of the filmFX houses use renderman for their rendering, however renderman is not a ray traced renderer.

    The simple reason why is that 99% of filmFX shots do not require raytracing....

    The same is also true of Games. I'm willing to bet that in my lifetime I will never see a AAA game released that is 100% raytraced. Some games may use it for 2 to 5% of the effects, but that will be about it.... much like it is in the film industry.....

  10. Re:What's the point ... by robthebloke · · Score: 2, Insightful

    Instead of a video card you would just need a faster cpu, which if we base off of moore's law won't be much longer. You'd actually need faster ram first. Current 800/1066Mhz ram can't compete with the 1900Mhz+ ram available on the GPU - it simply can't feed the data to the CPU core's quick enough. To speed up execution times of each core you'd need to limit the amount of Ram it can access to minimise cache misses. At that point, you suddenly have a stream processor that's pretty damn similar to the current GPU model.
  11. Re:What's the point ... by Goaway · · Score: 2, Insightful

    Raytracing is just as much of a hack as rasterizing. It's just a different hack. Both are nothing but rough approximations of the rendering equation.

    Raytracing is better at rasterizing for rendering silver spheres on checkerboards, but the lack of those aren't the main problem with graphics these days. Raytracing is pretty much as bad at rasterizing at things that matter much more, such as decent global illumination.

  12. Re:What's the point ... by mrchaotica · · Score: 2, Insightful

    To put it bluntly, at the moment the industry has to invest in better tools to simplify the asset creation stage.

    Indeed. Who cares about raytracing? The next big thing in games is procedural generation of content!

    --

    "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz