News for hackers. Stuff that matters.
Re:John Carmack's Comment on Hardware Ray Tracing by Tuna-Fish on Thursday January 24, 2013 @01:58AM (#5108079)
> Throwing more ( or finer etched) silicon at an algorithm will not help the algorithm, compared to a superior algorithm

Actually, it will when the complexity classes of the algorithms differ. Which is true in this case -- the time taken to ray trace a scene rises as the log(n) of the size of that scene, while the time taken to rasterize rises linearly with regards to the scene.

There exists a threshold of computing power/scene complexity above which raytracing beats rasterization in speed. However, like Carmack pointed out, the constant factors are massive, so this won't be reached in the near future, if ever.

The reason the constant factors are so huge is that complexity of raytracing rises linearly with the count of pixels to be drawn, while in rasterization a lot of the work can be shared by neighbouring pixels.

Intriguingly, this means that if you can reduce the pixel counts, you can vastly improve the value of raytracing.

Notably, if you can do eye tracking and rendering in less than 15ms, you can reach the same visual quality as a full-screen, high-resolution render by rendering only the areas you are actually looking at in high resolution, and rendering the rest of the scene at a progressively lower resolution farther from the focus point. The cone of high-precision vision is surprisingly small, something like tens of pixels when looking at a screen from a normal viewing distance. If you did this, you should be able to cut the amount of rays you need to send by at least two orders of magnitude, which would bring raytracing to real-time quality on modern hardware.

Re:John Carmack's Comment on Hardware Ray Tracing by James_Duval on Thursday January 24, 2013 @05:16AM (#5108748)
Naive question:

Does your last paragraph have any implications for VR? Could something like the Oculus Rift benefit from raytracing technology? Or have I misunderstood what you are saying?

Re:John Carmack's Comment on Hardware Ray Tracing by yk on Thursday January 24, 2013 @09:49AM (#5109745)
I only skimmed the paper referenced below [1]. But what I understand at the moment is, that you essentially measure the area of the screen where high quality is important (using an eye tracker). And with this you can allocate your resources better. The downside is, that the rendering looks rather strange for anyone who looks on it without proper alignment of the high quality region. So VR goggles seem to be a good candidate for the technology, if they include an eye tracker, because they guarantee a single viewer and provide a frame to attach the eye tracker.

[1] http://research.microsoft.com/apps/pubs/default.aspx?id=1766... thanks mynameismiek

Re:John Carmack's Comment on Hardware Ray Tracing by duaneb on Thursday January 24, 2013 @09:29AM (#5109642)
The idea is that raytracing can degrade gracefully, so there's a sliding scale between rendering time and rendering quality for every pixel. And yes, this means that, theoretically, the computer could naturally degrade pixels that you're not currently looking at.

I suspect this would look highly unnatural in practice, though, as even static scenes would flicker and change, especially with reflections and any surface or technique that uses random sampling methods (which is virtually every algorithm that is both fast and looks good).

Re:John Carmack's Comment on Hardware Ray Tracing by Tuna-Fish on Thursday January 24, 2013 @02:29PM (#5111592)
> I suspect this would look highly unnatural in practice

In pair tests test subjects were unable to see a difference between the foveated image and the normally rendered one. The flicker can be removed by blurring the image to the point where flicker no longer exists. Because your brain is used to a very low sampling rate outside the fovea, it actually helps in hiding the artifacts, because they occur naturally in your vision.

Re:John Carmack's Comment on Hardware Ray Tracing by yk on Thursday January 24, 2013 @02:55AM (#5108264)
Yes, as I pointed out in the last sentence, perhaps I should have put a big-O somewhere into it. Do you have a link on the eye tracking/rendering combo? That technique sounds rather fascinating.
Re:John Carmack's Comment on Hardware Ray Tracing by mynameismiek on Thursday January 24, 2013 @08:21AM (#5109334)
Re:John Carmack's Comment on Hardware Ray Tracing by bcoates on Thursday January 24, 2013 @03:03AM (#5108291)
Is raytracing still linear with pixel count if you're doing something like Metropolis light transport to get global illumination effects?
Re:John Carmack's Comment on Hardware Ray Tracing by ericmj on Thursday January 24, 2013 @04:19AM (#5108548)
Yes. But the "constant factor" will be very large, even larger than for traditional ray tracing, for some global illumination algorithms, even when you chose to only render a small part of the scene. For example photon mapping requires a pre-pass where you trace photons from the light source onto the scene, that means that reducing the pixel count doesn't decrease the time for the pre-pass. http://en.wikipedia.org/wiki/Photon_mapping