Ray trace rendering is no walk in the park. It’s a very compute intensive process, resulting in multi-core CPUs or GPUs getting all hot and bothered.
While CPUs and GPUs do an excellent job, they are both general-purpose processors which can perform all sorts of tasks. You can drive a screw with a hammer, as they say, but the fact is CPUs and GPUs are not optimised for the code that simulates how light reflects and refracts off objects.
One alternative is to use hardware that has been specifically designed for ray trace rendering. This approach is nothing new: remember the ARTVPS RenderDrive?
Imagination Technologies, a firm best known for its mobile processors, is now taking a fresh look at ray trace hardware.
Earlier this year it unveiled the Caustic Series2 R2100 and R2500 ray tracing add-in boards and plug-ins (Caustic Visualizers) for 3ds Max and Maya.
The technology also has the backing of software developers: McNeel’s Rhino 5 Neon viewport plug-in can be accelerated by the Caustic cards as can Dassault Systèmes’ RealView Plus plug in for SolidWorks 2014.
All of these rendering technologies, which are based on Imagination’s PowerVR OpenRL technology, also work with CPUs. They just render faster with the Caustic cards.
Ray tracing in the viewport
The focus for the Caustic cards is to bring interactive ray trace rendering into the viewport, acting as a preview for a final render.
In product development this means designers are able to use photorealism much earlier on in the process to help evaluate form and materials. It’s possible to play with lights/environments, camera settings and materials and get very fast feedback on how these will affect the scene.
The progressive renderer refines the image with each pass and at low resolutions you can get pretty good feedback in seconds.
With the Rhino and SolidWorks integrations the Caustic renderer is completely integrated into the viewport. There are no controls; you simply change the viewport render mode as you would when swapping between wireframe and shaded views.
In Rhino you turn on ‘Raytraced with Neon’ whereas in SolidWorks 2014 it’s called ‘RealView Plus’.
As everything takes place in the viewport the model remains fully interactive at all times. You can even make edits, but if changes are made the ray trace render starts again from scratch.
In Rhino users can also define the number of passes: simply click the bottom right of the viewport and punch in a number.
There’s a lot more control in the Max and Maya plug-ins; the assumption being that users of those products are experts at rendering.
While the workflow still centres on viewport or preview rendering, Imagination reckons the Maya plug-in (the most mature of all the implementations) is getting to the point where it can be used as a final renderer.
The latest 1.2 release includes features such as alpha channel support, motion blur and batch rendering.
The Caustic cards feature what Imagination calls Ray Trace Units (RTUs). The R2100 has one of these while the R2500 has two.
Unlike GPU ray tracing, where the entire rendering job is usually loaded up to the GPU, the Caustic cards only carry out ray-tracing calculations, leaving the CPU to perform all the shading computations.
As shader maps and textures reside in the workstation’s system memory this actually makes the R2100’s 4GB and R2500’s 16GB of on-board memory go much further. According to Imagination, the R2500 is capable of handling very large models, typically used in film or post-production.
As the CPU plays a very active role in the process it is important to match your Caustic card with the right workstation. A single R2100 should work fine in most multi-core single CPU workstations, but the R2500 needs a dual CPU machine, the more cores the better.
The CPU can get taxed quite heavily when rendering, though this appears to depend on the complexity of the textures and the number of cores. On a single processor quad core Xeon we found CPU utilisation hit 70%. On a dual processor 12 core Xeon it only reached 30%. In both instances it was still possible to use the workstation for other tasks.
The cards will fit pretty much any workstation and installation is easy. The half-length R2100 needs a x8 PCIe Gen 2.0 slot, while the full length R2500 a x16. Power consumption is extremely low — 30W and 60W respectively — so neither card needs to draw additional power from the PSU, unlike GPU compute boards like the 225W Nvidia Tesla K20.
The Rhino Neon plug in is a 30MB download and installation is easy.
While Neon is designed to be a preview renderer for the native Rhino and Brazil offline renderers, the results are very impressive.
The quality approaches that of a final production render and as a result McNeel has exposed command line arguments in Rhino that enables Neon to render images sizes that are larger than the viewport.
It’s a big shame there is no batch rendering mode, as there is with Maya, as this would help support Neon’s production rendering aspirations.
Of course, the big benefit is speed and with a three-year old Dell Precision T3500 workstation with a quad core Intel Xeon W3520 (2.66GHz) our scene rendered in 89 seconds with a R2100 card and 273 seconds without.
Performance will vary according to the complexity of the scene and the number of CPU cores.
The SolidWorks 2014 implementation has not been officially released and is currently hidden within the SolidWorks code. It can only be exposed through a registry hack, which can be downloaded from the official SolidWorks forum.
SolidWorks RealView Plus is pitched as a real time viewport that more closely matches what you can expect to see in your PhotoView 360 renders than RealView does.
We weren’t bowled over by the results, and certainly weren’t convinced that it was an accurate preview for PhotoView 360, but it’s still very early days and we will watch developments with interest.
Caustic’s RTU boards are a very exciting proposition for ray trace rendering.
While the technology gives the distinct impression of a work in progress it’s clear there’s plenty more to come, both from hardware and software.
Priced at $495 and $995 respectively the R2100 and R2500 offer an exceptionally low-cost entry to a co-processor market that is really starting to hot up. Nvidia (Tesla), AMD (FirePro) and Intel (Xeon Phi) are all jostling for position.
As with Nvidia iray the success of Caustic’s OpenRL technology will no doubt boil down to application support. Starting with 3D animation software, the technology is now finding its way into CAD. It will be interesting to see where it pops up next.