Today we have a new add-in board coprocessor in town. Caustic Graphics has announced their CausticOne hardware and CausticGL API which will enable hardware accelerated raytracing. We are reminded of Ageia's venture into dedicated hardware for physics, but Caustic Graphics seems to be taking a more balanced approach to bringing their hardware to market. The goal is to start at the top where cost is no object and get developers interested in and working with their hardware before they bring it to the end user.
Pixar and other studios that make heavy use of computer generated animation for films tend to have render farms that can take seconds, minutes or even hours to render. With full length films lasting about 150000 frames (plus or minus), that time really adds up. Those that need to render one frame as near reality as possible (say car designers doing preliminary visualization of a new model) can kick off rendering jobs that take days to complete. These guys put tons of cash into their computer systems. Time is money and if Caustic can save these guys more time than it would cost them to buy the hardware and port their software, then Caustic will do well.
The long term goals might have something to do with gaming, but we definitely aren't looking at that option right now. By trying to penetrate the market at the back end like this, Caustic Graphics may avoid the pitfalls we saw Aegia run into. Of course, at this point it is unclear whether or not the end user will even need a dedicated raytracing card by the time the hardware makes it to market. With current GPUs getting faster all the time, CPUs becoming increasingly parallel, and Larrabee on the horizon, there are quite a number of factors that will affect the viability of a part like this in consumer space.
Regardless, Caustic Graphics is here and ready to start making an impact. Their SDK should be available to developers today, with hardware soon to follow. Before we take a deeper look at what Caustic Graphics is offering, let's talk a little bit about the differences between rasterization (what current GPUs do) and raytracing (what the Caustic Graphics hardware will accelerate).
48 Comments
View All Comments
DeathBooger - Wednesday, April 22, 2009 - link
They're speaking in terms of workstation hours, not actual hours. HP is hyping their products so it is misleading.Roland00 - Tuesday, April 21, 2009 - link
So each frame took about (94*60*30=169,200 frames)Thus each final frame took 236.40 hours of render time.
Verdant - Monday, April 20, 2009 - link
I respectfully disagree, a fully raytraced scene with anything more than basic lighting can easily take well over a minute per frame, even if you have a huge render farm, it takes a long time to render an animation of any significant length and detail. Most larger animation houses would jump on something like this, if it really can render their frames 20x faster, and not use 20x the power.jabber - Monday, April 20, 2009 - link
....that still cant show anything but a rendered image of its product several months after its been announced.Tuvok86 - Tuesday, April 21, 2009 - link
the card picturedhttp://www.pcper.com/images/reviews/694/card-angle...">http://www.pcper.com/images/reviews/694/card-angle...
monomer - Monday, April 20, 2009 - link
Is it just me, or does the Caustic logo look similar to a slightly rotated Quake III logo?SonicIce - Monday, April 20, 2009 - link
lol yea. except its like quake 6 or somethingssj4Gogeta - Monday, April 20, 2009 - link
If raytracing catches on in games, how long will it take Intel to make similar units and put a couple of them on the Larrabee die? I'm sure if they could do it, Intel's scientists too.Besides, from what I've seen/read, it seems Larrabee will be good enough for raytracing. In a Larrabee research paper from Intel I read that Larrabee is 4.6 times more efficient than Intel Xeon (Core based) processors in raytracing on a per clock, per core basis. Also, Intel ray traced quake war at around 25 fps @1280x720 using 4 Intel Dunnington hexa-core processors (24 cores in total).
So if Larrabee will have 32 cores, and even if we take it to be 4x more efficient instead of 4.6 (scaling etc.) then it will be (32*4)/24 = around 5.5 times faster than the setup they used. That's enormous! 130 fps at 1280x720 res for a fully ray traced game!, or you could increase the res and keep the fps to 60. Besides, Larrabee will most likely have MUCH more bandwidth available than that FSB based Dunnington system had.
I can't wait, Intel. Hurry up!
lopri - Monday, April 20, 2009 - link
Interesting article. Thank you for the explanation on Ray Tracing v. Rasterization. The difference is still confusing to me, but hopefully I'll eventually understand. I don't expect a simple answer to my questions but maybe someone can enlighten me.1. Doesn't Ray-Tracing still require triangles anyway? I understand Rasterazation as Derek explained: draw triangles and 'flatten' them. Ray-tracing shoots (?) rays on triangles. So it still needs triangles anyway. It sounds more like shooting rays on 'flattened' triangles.. Oh but what do I know.
2. Is there any 'fundemental' reason why Ray-traced images look better than rasterized images? It seems to me they're just different ways for a same result. Yes, I'm a noob.
Anyway, I agree with others regarding this specific company. It's proably applying some patents and then looking to be bought by bigger fishes. Do they even have a working hardware?
DerekWilson - Tuesday, April 21, 2009 - link
1) You can do raytracing without triangles -- you can just use math to describe your objects like spheres and stuff as all that's really needed is an intersection point. But you can also use triangles, and this is often what is done because it does still make some things easier. You just do intersection between a line and a plane and see if the intersection point falls inside your triangle. So -- for rasterization, triangles are required while for raytracing they are perfectly fine to use but you aren't as locked in to using them as with rasterizers.2) because each pixel can contain input from more of the rest of the scene with little programatic complexity and a high degree of accuracy. it is possible for raytracing to produce a more accurate image /faster/ than rasterization would require to achieve an equally accurate image. however, it is possible for rasterization to produce an image that is "close enough" MUCH faster than raytracing (especially with modern hardware acceleration).
...
there are some raytraced images that look very bad but accurately portray reflection and refraction. accuracy in rendering isn't all that's required for a good looking image. The thing that is being rendered also needs to be handled well by artists -- accurate textures and materials need to be developed and used correctly or the rendered image will still look very bad. I think this is why a lot of raytracing proof of concepts use solid colored glass even when they don't have to. I honestly don't think the sample images Caustic provided are very "good" looking, but they do show off good effects (reflection, refraction, caustics, ambient occlusion, soft shadows ...) ...
so ... I could take a diamond and try cutting it myself. I could put this diamond on a table next to a really well cut cubic zirconium. people might think the imitation looks much better and more "diamond" like in spite of the fact that my horribly cut diamond is a diamond ... which one is "better" is different than which one is more "accurate" ... both are good though :-)
hope that helps ...