2267 Matching Results

Efficient Multi-View Ray Tracing Using Edge Detection and Shader Reuse

Stereoscopic rendering and 3D stereo displays are quickly becoming mainstream. The natural extension is autostereoscopic multi-view displays, which by the use of parallax barriers or lenticular lenses, can accommodate many simultaneous viewers without the need for active or passive glasses. As these displays, for the foreseeable future, will support only a rather limited number of views, there is...
Authored by Magnus Andersson (Intel) Last updated on 07/07/2015 - 11:16

Hierarchical Stochastic Motion Blur Rasterization

We present a hierarchical traversal algorithm for stochastic rasterization of motion blur, which efficiently reduces the number of inside tests needed to resolve spatio-temporal visibility. Our method is based on novel tile against moving primitive tests that also provide temporal bounds for the overlap. The algorithm works entirely in homogeneous coordinates, supports MSAA, facilitates efficient...
Authored by Jacob Munkberg (Intel) Last updated on 07/07/2015 - 11:12

Depth Buffer Compression for Stochastic Motion Blur Rasterization

Previous depth buffer compression schemes are tuned for compressing depths values generated when rasterizing static triangles. They provide generous bandwidth usage savings, and are of great importance to graphics processors. However, stochastic rasterization for motion blur and depth of field is becoming a reality even for real-time graphics, and previous depth buffer compression algorithms fail...
Authored by Magnus Andersson (Intel) Last updated on 07/07/2015 - 10:36

Adaptive Transparency, HPG 2011

Adaptive transparency is a new solution to order-independent transparency that closely approximates the ground-truth results obtained with A-buffer compositing but, like a Z-buffer, operates in bounded memory and exhibits consistent performance. The key contribution of our method is an adaptively compressed visibility representation that can be efficiently constructed and queried while rendering...
Authored by Marco Salvi (Intel) Last updated on 07/07/2015 - 10:33

Spark: Modular, Composable Shaders for Graphics Hardware

We present a shading language, Spark, and its implementation for modern graphics hardware that improves support for separation of concerns into modules. A Spark shader class can encapsulate code that maps to more than one pipeline stage, and can be extended and composed using object-oriented inheritance. In our tests, shaders written in Spark achieve performance within 2% of HLSL.
Authored by Tim Foley (Intel) Last updated on 07/07/2015 - 10:31

High-Quality Spatio-Temporal Rendering using Semi-Analytical Visibility

We present a novel visibility algorithm for rendering motion blur with per-pixel anti-aliasing. Our algorithm uses a number of line samples over a rectangular group of pixels, and together with the time dimension, a two-dimensional spatio-temporal visibility problem needs to be solved per line sample. In a coarse culling step, our algorithm first uses a bounding volume hierarchy to rapidly remove...
Authored by TOMAS A. (Intel) Last updated on 07/07/2015 - 10:28

Efficient Depth of Field Rasterization using a Tile Test based on Half-Space Culling

For depth of field rasterization, it is often desired to have an efficient tile versus triangle test, which can conservatively compute which samples on the lens that need to execute the inside-triangle test. We present a novel test for this, which is optimal in the sense that the region on the lens cannot be further reduced. Our test is based on removing half-space regions of the (u,v)-space on...
Authored by TOMAS A. (Intel) Last updated on 07/07/2015 - 10:24

Automatic Pre-Tessellation Culling

Graphics processing units supporting tessellation of curved surfaces with displacement mapping exist today. Still, to our knowledge, culling only occurs after tessellation, i.e., after the base primitives have been tessellated into triangles. We introduce an algorithm for automatically computing tight positional and normal bounds on the fly for a base primitive. These bounds are derived from an...
Authored by Jon Hasselgren (Intel) Last updated on 07/07/2015 - 10:20

Backface Culling for Motion Blur and Depth of Field

For triangles with linear vertex motion, common practice is to backface cull a triangle if it is backfacing at both the start and end of the motion. However, this is not conservative. We derive conservative tests that guarantee that a moving triangle is backfacing over an entire time interval and over the area of a lens. In addition, we present tests for the special cases of only motion blur and...
Authored by Jacob Munkberg (Intel) Last updated on 07/07/2015 - 10:19

Optimizing Compiler For Automatic Shader Bounding

Programmable shading provides artistic control over materials and geometry, but the black box nature of shaders makes some rendering optimizations difficult to apply. In many cases, it is desirable to compute bounds of shaders in order to speed up rendering. A bounding shader can be automatically derived from the original shader by a compiler using interval analysis, but creating optimized...
Authored by Franz Clarberg (Intel) Last updated on 07/07/2015 - 10:17
For more complete information about compiler optimizations, see our Optimization Notice.