Ask Slashdot: How Did Real-Time Ray Tracing Become Possible With Today's Technology?
dryriver writes: There are occasions where multiple big tech manufacturers all announce the exact same innovation at the same time -- e.g. 4K UHD TVs. Everybody in broadcasting and audiovisual content creation knew that 4K/8K UHD and high dynamic range (HDR) were coming years in advance, and that all the big TV and screen manufacturers were preparing 4K UHD HDR product lines because FHD was beginning to bore consumers. It came as no surprise when everybody had a 4K UHD product announcement and demo ready at the same time. Something very unusual happened this year at GDC 2018 however. Multiple graphics and GPU companies, like Microsoft, Nvidia, and AMD, as well as other game developers and game engine makers, all announced that real-time ray tracing is coming to their mass-market products, and by extension, to computer games, VR content and other realtime 3D applications.
Why is this odd? Because for many years any mention of 30+ FPS real-time ray tracing was thought to be utterly impossible with today's hardware technology. It was deemed far too computationally intensive for today's GPU technology and far too expensive for anything mass market. Gamers weren't screaming for the technology. Technologists didn't think it was doable at this point in time. Raster 3D graphics -- what we have in DirectX, OpenGL and game consoles today -- was very, very profitable and could easily have evolved further the way it has for another 7 to 8 years. And suddenly there it was: everybody announced at the same time that real-time ray tracing is not only technically possible, but also coming to your home gaming PC much sooner than anybody thought. Working tech demos were shown. What happened? How did real-time ray tracing, which only a few 3D graphics nerds and researchers in the field talked about until recently, suddenly become so technically possible, economically feasible, and so guaranteed-to-be-profitable that everybody announced this year that they are doing it?
Why is this odd? Because for many years any mention of 30+ FPS real-time ray tracing was thought to be utterly impossible with today's hardware technology. It was deemed far too computationally intensive for today's GPU technology and far too expensive for anything mass market. Gamers weren't screaming for the technology. Technologists didn't think it was doable at this point in time. Raster 3D graphics -- what we have in DirectX, OpenGL and game consoles today -- was very, very profitable and could easily have evolved further the way it has for another 7 to 8 years. And suddenly there it was: everybody announced at the same time that real-time ray tracing is not only technically possible, but also coming to your home gaming PC much sooner than anybody thought. Working tech demos were shown. What happened? How did real-time ray tracing, which only a few 3D graphics nerds and researchers in the field talked about until recently, suddenly become so technically possible, economically feasible, and so guaranteed-to-be-profitable that everybody announced this year that they are doing it?
Be careful with your terminology.
Real Time Ray Tracing with one primary ray and one shadow ray for each pixel, was viable last year as well (at 1080p.)
But this will not render indirect light, thus no Global Illumination.
You may be referring to Real Time Path Tracing, where you need to shoot a lot of rays for every pixel.
This is currently not possible, and also not possible in this year's GDC demos: I think most of the demos were hybrids (rasterizing+tracing), and definitely not full Global Illumination.
http://www.stolk.org/tlctc
Real time ray tracing was a topic since I was in college 20 years ago. A lot of PhD students have done their research. Algorithms optimized. Hardware advancing. Futurists at major corporations (fancy name for people responsible for monitoring tech) saw hardware evolving.
So Microsoft probably saw that it was going to be viable in 5 years (or whenever) in 2013. They probably starting developing an API in conjunction with major hardware manufacturers. So they all worked together to bring ray tracing to the masses eventually.
Now all this work is paying off and consumers get the end product.
This is no different than major corporations using augmented reality to validate construction designs. Ya, they are doing that atleast in labs. Take the 3D model as built and validate that it is as built. Or quickly look at something in the real world and figure out where the 3D model data is and figure out in a second what vendor supplied the broken part. Ya, this stuff is happening!
You're probably not paying enough attention to planes. They crash less frequently than they did and airports are switching to systems where the planes make a smooth approach without the stair-step approach pattern that was previously used.
Other than that, there's not going to be much difference because by the '80s planes were just that good. Any other changes are ones that are mostly only going to be noticed by people actually working with them.
The computing technology stuff tends to be more accessible and more present in our day to day life than it was, so we tend to notice it more. But, there again, we're getting close to the point where additional improvements aren't going to be as obvious as they were previously. I've had this computer now for a few years and the previous one was quite a few years old when I replaced it. That would have been inconceivable to me 20 years ago as the technology was improving that quickly.
I would guess they figured with graphics cards having 3500+ cores and ample memory for massive lookup tables, suddenly it seems feasible. That or a patent just expired, or both.
It is using rasterization for the scene, and then hybrid ray tracing for the reflective, shadow, and opacity components were it applies. This is not true ray-tracing, but rather another rendering "trick" to optimize for speed. Most of our rendering for games today is approximations, because it is good enough. Same thing here.
Even if ray-tracing isn't used for graphics, you can use it for the sound engine, with the benefit of making it hardware accelerated. Would make a whole lot of games more interesting, for example Stealthers like Thief, horror games etc etc.
Just to be clear, it's not "reflections" (as in mirrors) that's the problem necessarily, it's the fuzzy effects: diffuse, glossy, translucent, aerosols, etc.
It may never be doable because of Blinn's Law.
sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
> The UE4 Star Wars thing is real enough. It's also running on $12,000 worth of GPUs at 30fps in 1080p
Uhm, try $50K for the Nvidia DGX Station running on four Volta GPUs.
> Well the answer is no, it is here.
Outcast, back in 1999, did real-time ray tracing and voxel rendering
The only difference is 20 years later we can do it hardware.
Back in 1980, the University of Waterloo mathematics and computer science building had a locked public display case featuring artifacts from the senior-level computer graphics course, most of which involved ray tracing (standard chessboard-reflected-in-shiny-sphere kinds of things, but with the scenes aggressively simplified—like only three chess pieces of a dozen polygons each and the board reduced to sixteen squares).
What separated the great from the good was treatment of subtleties such as getting the specular highlighting right. I was young and naive and didn't have Wikipedia at my fingertips, so I don't recall much more.
They also had a public information kiosk back in 1980 which used some kind of polygon-fill graphics language to render an interactive dial-up information browser in all the best oversaturated colours. Just like the Internet, if the Internet consisted of exactly one host, and it was dead slow. But shiny! Everyone tried it out—for exactly three minutes (that would be about your third screen rendered).
They also had rooms full of card readers, which they couldn't bother themselves to eliminate until some fancy anniversary shindig a few years later.
In one terminal room you'd have IBM 3270 block-oriented displays, in the next you'd have the god-awful WIDJET terminals, in the next you'd have IBM PCs running APL (for statistics students), in the next you had Commodore SuperPETs, custom tweaked by the Computer Systems Group or related ecosystem (these people were later responsible for the Watcom C++ compiler).
WIDJET (Waterloo interactive direct job-entry terminals) was basically a JCL front-end with the ability to store about six whole files on non-card storage, where mostly you sat twiddling your thumbs waiting for your runs to pass through the job submission queue.
One such room was more advanced and you could *edit* your next assignment with your previous run still in the queue, but you had to sign up way ahead of time to actually get a seat in this room.
In the other room, you might submit a compile, sit there for ten minutes watching it bounce up and down the queue (upper-year jobs had priority) and then decide "oh, I did something wrong in the previous assignment" and you'd click "edit" on some previous source file, only to discover the message "job submission cancelled" popping up on the status line of your display and since you'd already spent years with the immense power of the TRS-80 or Apple II at your fingertips, you'd bash your head into the desk and wonder how you'd become mired in this technological institution of hazing, abuse, and mediocrity.
The SuperPETs were okay, but the custom Pascal did some kind of partial compile to catch syntax errors before running the interpreter. The error reporting was beyond horrible. 50% of all syntax errors were the same message: "syntax error near or before end of file." It was much like Donald Trump tweaking "WRONG!" at you if you got a single brace out of alignment.
"Sorry! I'll hunt through my entire program looking for the one I messed up." This worked for localized changes. But generally what you actually did after a big edit was added or removed braces at random until you found the problem through a tedious process of bisection (which, however, was an order of magnitude less tedious than dealing with WIDJET, even in the good room).
My first year at Waterloo was the biggest computer science mindfuck of my entire life.
Eventually I discovered you could kind of get into a groove with the IBM 3270 terminals—as archaic as they seemed—if you blinked longer than normal after each press of the ENTER key. Plus, these had chat, so you could send "nice sunrise" messages to all your friends at 05:00.
Fro