Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where David Kirk McAllister is active.

Publication


Featured researches published by David Kirk McAllister.


international conference on computer graphics and interactive techniques | 2010

OptiX: a general purpose ray tracing engine

Steven G. Parker; James Bigler; Andreas Dietrich; Heiko Friedrich; Jared Hoberock; David Luebke; David Kirk McAllister; Morgan McGuire; R. Keith Morley; Austin Robison; Martin Stich

The NVIDIA® OptiX™ ray tracing engine is a programmable system designed for NVIDIA GPUs and other highly parallel architectures. The OptiX engine builds on the key observation that most ray tracing algorithms can be implemented using a small set of programmable operations. Consequently, the core of OptiX is a domain-specific just-in-time compiler that generates custom ray tracing kernels by combining user-supplied programs for ray generation, material shading, object intersection, and scene traversal. This enables the implementation of a highly diverse set of ray tracing-based algorithms and applications, including interactive rendering, offline rendering, collision detection systems, artificial intelligence queries, and scientific simulations such as sound propagation. OptiX achieves high performance through a compact object model and application of several ray tracing-specific compiler optimizations. For ease of use it exposes a single-ray programming model with full support for recursion and a dynamic dispatch mechanism similar to virtual function calls.


high performance graphics | 2011

Simpler and faster HLBVH with work queues

Kirill Garanzha; Jacopo Pantaleoni; David Kirk McAllister

A recently developed algorithm called Hierachical Linear Bounding Volume Hierarchies (HLBVH) has demonstrated the feasibility of reconstructing the spatial index needed for ray tracing in real-time, even in the presence of millions of fully dynamic triangles. In this work we present a simpler and faster variant of HLBVH, where all the complex book-keeping of prefix sums, compaction and partial breadth-first tree traversal needed for spatial partitioning has been replaced with an elegant pipeline built on top of efficient work queues and binary search. The new algorithm is both faster and more memory efficient, removing the need for temporary storage of geometry data for intermediate computations. Finally, the same pipeline has been extended to parallelize the construction of the top-level SAH optimized tree on the GPU, eliminating round-trips to the CPU, accelerating the overall construction speed by a factor of 5 to 10x.


Communications of The ACM | 2013

GPU ray tracing

Steven G. Parker; Heiko Friedrich; David Luebke; R. Keith Morley; James Bigler; Jared Hoberock; David Kirk McAllister; Austin Robison; Andreas Dietrich; Greg Humphreys; Morgan McGuire; Martin Stich

The NVIDIA® OptiX#8482; ray tracing engine is a programmable system designed for NVIDIA GPUs and other highly parallel architectures. The OptiX engine builds on the key observation that most ray tracing algorithms can be implemented using a small set of programmable operations. Consequently, the core of OptiX is a domain-specific just-in-time compiler that generates custom ray tracing kernels by combining user-supplied programs for ray generation, material shading, object intersection, and scene traversal. This enables the implementation of a highly diverse set of ray tracing-based algorithms and applications, including interactive rendering, offline rendering, collision detection systems, artificial intelligence queries, and scientific simulations such as sound propagation. OptiX achieves high performance through a compact object model and application of several ray tracing-specific compiler optimizations. For ease of use it exposes a single-ray programming model with full support for recursion and a dynamic dispatch mechanism similar to virtual function calls.


Research journal of textile and apparel | 2005

Measuring and Rendering Spatially-Varying Fabrics

David Kirk McAllister; Anselmo Lastra

Most surfaces, including most fabrics, have different reflectance at different points on the surface. The reflectance also varies based on the incident and exitant light directions. This spatially and angularly varying surface appearance is a 6D function, sometimes called the Spatial Bi-directional Reflectance Distribution Function (SBRDF). We present a system for measuring the SBRDF of real fabrics in a lab setting. Our system is able to capture distinct anisotropic BRDFs at each point on the fabric. The measurement device yields from 300 MB to 8 GB of reflectance data for complex fabrics. We compress the SBRDF using a sum of very few nonlinear bases suited to BRDFs, yielding a highly compact texture map of from 2 to 20 MB, suitable for accurately visualizing articles made of specific fabrics interactively using commodity graphics hardware. We provide an online database of sampled SBRDFs, both in raw form and as final texture maps.


Archive | 2005

Decompression of compressed 16 bit data

Walter E. Donovan; David Kirk McAllister


Archive | 2010

Selecting and representing multiple compression methods

David Kirk McAllister; Narayan Kulshrestha; Steven E. Molnar


Archive | 2013

SYSTEM, METHOD, AND COMPUTER PROGRAM PRODUCT FOR CONSTRUCTING AN ACCELERATION STRUCTURE

Kirill Vladimirovich Garanzha; Jacopo Pantaleoni; David Kirk McAllister


high performance graphics | 2009

Proceedings of the Conference on High Performance Graphics 2009

Stephen N. Spencer; David Kirk McAllister; Matt Pharr; Ingo Wald; David Luebke; Philipp Slusallek


Archive | 2008

System and method for packing data in different formats in a tiled graphics memory

Donald A. Bittel; David Kirk McAllister; Steven E. Molnar


Archive | 2008

Optimized alpha blend for anti-aliased render

Gary C. King; Luke Y. Chang; Steven E. Molnar; David Kirk McAllister

Collaboration


Dive into the David Kirk McAllister's collaboration.

Researchain Logo
Decentralizing Knowledge