Supriya Ghosh (Editor)

Ray tracing hardware

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit

Ray-tracing hardware is special-purpose computer hardware designed for accelerating ray tracing calculations.

Contents

Introduction: Ray tracing and rasterization

The problem of rendering 3D graphics can be conceptually presented as finding all intersections between a set of "primitives" (typically triangles or polygons) and a set of "rays" (typically one or more per pixel).

Up to 2010 all typical graphic acceleration boards, called graphics processing units (GPUs), use rasterization algorithms. The ray tracing algorithm solves the rendering problem in a different way. In each step, it finds all intersections of a ray with a set of relevant primitives of the scene.

Both approaches have their own benefits and drawbacks. Rasterization can be performed using devices based on a stream computing model, one triangle at the time, and access to the complete scene is needed only once. The drawback of rasterization is that non-local effects, required for an accurate simulation of a scene, such as reflections and shadows are difficult; and refractions nearly impossible to compute.

The ray tracing algorithm is inherently suitable for scaling by parallelization of individual ray renders. However anything other than ray casting requires recursion of the ray tracing algorithm (and random access to the scene graph) to complete their analysis, since reflected, refracted, and scattered rays require that various parts of the scene be re-accessed in a way not easily predicted. But it can easily compute various kinds of physically correct effects, providing much more realistic impression than rasterization.

The complexity of a well implemented ray tracing algorithm scales logarithmically; this is due to objects (triangles and collections of triangles) being placed into BSP trees or similar structures, and only being analyzed if a ray intersects with the bounding volume of the binary space partition.

Implementations

Various implementations of ray tracing hardware have been created, both experimental and commercial:

  • (2002–2009) ART VPS company (founded 2002), situated in the UK, sold ray tracing hardware for off-line rendering. The hardware used multiple specialized processors that accelerated ray-triangle intersection tests. Software provided integration with Maya (see Autodesk Maya) and Max (see Autodesk 3ds Max) data formats, and utilized the Renderman scene description language for sending data to the processors (the .RIB or Renderman Interface Bytestream file format). As of 2010, ARTVPS no longer produces ray tracing hardware but continues to produce rendering software.
  • (2002) The computer graphics laboratory at Saarland University headed by Dr. -Ing Slusallek has produced prototype ray tracing hardware including the FPGA based fixed function data driven SaarCOR (Saarbrücken’s Coherence Optimized Ray Tracer) chip and a more advanced programmable (2005) processor, the Ray Processing Unit (RPU)
  • (1996) Researchers at Princeton university proposed using DSPs to build a hardware unit for ray tracing acceleration, named "TigerSHARK"
  • Implementations of volume rendering using ray tracing algorithms on custom hardware have also been proposed : (2002) VIZARD II or built (1999) : vg500 / VolumePro ASIC based system
  • Caustic Graphics have produced a plug in card, the "CausticOne" (2010), that accelerates global illumination and other ray based rendering processes when coupled to a PC CPU and GPU. The hardware is designed to organize scattered rays (typically produced by global illumination problems) into more coherent sets (lower spatial or angular spread) for further processing by an external processor.
  • Imagination Technologies, after acquiring Caustic Graphics, produced the Caustic Professional's R2500 and R2100 plug in cards containing RT2 ray trace units (RTUs). Each RTU was capable of calculating up to 50 million incoherent rays per second.
  • Siliconarts developed a dedicated real-time ray tracing hardware (2010). RayCore (2011), which is the world's first real-time ray tracing semiconductor IP, was announced.
  • References

    Ray-tracing hardware Wikipedia