New Graphics Firm Promises Real-Time Ray Tracing 136
arcticstoat writes "A new graphics company called Caustic Graphics reckons it's uncovered the secret of real-time ray tracing with a chip that 'enables your CPU/GPU to shade with rasterization-like efficiency.' The new chip basically off-loads ray tracing calculations and then sends the data to your GPU and CPU, enabling your PC to shade a ray-traced scene much more quickly. Caustic's management team isn't afraid to rubbish the efforts of other graphics companies when it comes to ray tracing. 'Some technology vendors claim to have solved the accelerated ray tracing problem by using traditional algorithms along with GPU hardware,' says Caustic. However, the company adds that 'if you've ever seen them demo their solutions you'll notice that while results may be fast — the image quality is underwhelming, far below the quality that ray tracing is known for.' According to Caustic, this is because the advanced shading and lighting effects usually seen in ray-traced scenes, such as caustics and refraction, can't be accelerated on a standard GPU because it can't process incoherent rays in hardware. Conversely, Caustic claims that the CausticOne 'thrives in incoherent ray tracing situations: encouraging the use of multiple secondary rays per pixel.' The company is also introducing its own API, called CausticGL, which is based on OpenGL/GLSL, which will feature Caustic's unique ray tracing extensions."
Shitty summary! (Score:5, Informative)
Stop copying and pasting the article to generate almost the entire summary, especially when you don't do it right. The However, the company adds that 'if you've ever seen them demo their solutions you'll notice that while results may be fast -- the image quality is underwhelming, far below the quality that ray tracing is known for.' makes it look like you're talking about the Image quality of Caustic's new solution, which is obviously wrong. Here's the real paragraph:
Re:"Caustic"? (Score:5, Informative)
Re:"Caustic"? (Score:3, Informative)
Or the skewed image of a star caused by an imperfect telescope lens.
Re:Surely they could have chosen a better name. (Score:5, Informative)
Re:Big deal. (Score:5, Informative)
Juggler was very impressive for the time, but it was "only" real time high-color-depth animation playback (although even the compression method used was probably impressive back then). It was not real-time raytracing. Yes, Amigas were famously one of the first computers that made raytracing possible for home (or even pro movie/TV) users back then, but I remember that rendering a simple raytraced scene (a couple of primitives) in apps like Imagine 3D would have to run for a few hours, if not overnight. That might have been on an Amiga 1200, rather than my older 500, too.
Re:Big deal. (Score:3, Informative)
Yeah. _Not_ in real time. I admit the article is confusing, but that Amiga anim was not done in real time.
The rendered images were encoded in the Amiga's HAM display mode and then assembled into a single data file using a lossless delta compression scheme similar to the method that would later be adopted as the standard in the Amiga's ANIM file format.
20 percent? try 20 times (Score:4, Informative)
You must have misread the article... it reads "20x", not "20%".
I.e. a 1900% increase. Or however one would put that. 20 times faster.. much easier. Still within the margin of error? :)
( also per the article, they're actually pondering 200x faster down the line. )
Re:Unanswered questions (Score:3, Informative)
performance: 20x speed-up ("from what" is unanswered at this time) to 200x speed-up down the line
limits: limited more by your machine than the card
dynamic scenes: it's an accelerator - if the renderer can, then it still can with this card
sorting (accelerations structure building, I think you mean?): wouldn't know but seeing as it's supposed to accelerate the ray tracing process, I would imagine it's either on the card or via their own algorithms in software
photon mapping/MLT/etc.: it's an accelerator. If the method traces rays, then the card can accelerate it. This applies to most of the methods you mention.
performance comparison: should be coming up later - but presumably much better than software-only methods and better than GPU-assisted methods
image quality: it's an accelerator - image quality would depend mostly on the renderer that invokes the card, not the card itself.
geometric primitives: I believe they had at least a sphere thing going on.. presumably, again, that means that other mathematically-defined surfaces could be calculated 'as is' as well. If not, cast them to a mesh - doesn't hurt that much.
textures: n/a
algorithms: their own
acceleration structure: probably a closely guarded secret
if you want actual answers, try...
http://forums.cgsociety.org/showthread.php?f=59&t=739494 [cgsociety.org]
and
http://twitter.com/causticgraphics [twitter.com]
one 'real silicon', coming up (Score:3, Informative)
http://www.youtube.com/watch?v=B3qtq27J_rQ [youtube.com]
( no, not a realdoll advert - it's a vid of their current test card being twirled around in a human's hands. then again, maybe they raytraced that )
Re:ray tracing - not just for chrome spheres anymo (Score:4, Informative)
"Global Illumination"
It's a bit of a not-so-well-defined term, really, but within the context of current generation renderers, global illumination involves calculating not just direct lighting (i.e. a spot lighting a wall), but also diffuse indirect lighting (the light hitting the wall (dimly) illuminating the rest of the room) and even specular indirect lighting (such as caustics - like the light patterns you see in pools).
Is it an artificial distinction? (Score:3, Informative)
Re:I know their secret! (Score:5, Informative)
That's how just about all ray-tracers work. The problem is when you want to avoid aliasing effects. The easiest solution is to use multi-sampling, but having a nice square grid of primary rays per pixel still creates some aliasing effect. Randomizing the directions of these rays using a statistical distribution is one way of improving things. But then, at every reflection and refraction the secondary rays converge and diverge even further, so they will not all hit the same triangle/object/texture which causes all sorts of texture caching problems.
This company seems to have found a solution with their "incoherent ray" solution.
Re:So so I: 26 pages. (Score:2, Informative)
Nice try, though.
Re:Unanswered questions (Score:3, Informative)
You're asking a couple of incorrect questions.
This isn't a renderer. This is a render accellerator.
The idea is that Brazil, Mental Ray, Vray and FR can use this to accellerate the existing renderers without any sacrifice of quality or features.
Think of it like SSE3. It's a new instruction set you can use to accellerate your software. It's not a hardware renderer. It's a hardware ray tracer. The distinction is subtle but in important in this case.
It should also be noted that Splutterfish (the makers of Brazil. One of the top 4 raytracers on the planet and argueably the fastest.) has been aquired by Caustic. http://splutterfish.com/ [splutterfish.com]