220 likes | 238 Views
Geometric Sound Propagation. Micah Taylor. Adorable and Cute Cute. Horrible and Ugly. Helmholtz-Kirchhoff integral equation for waves. Geometric methods. Geometric methods. The good Can be very fast Heavily explored field, many optimization techniques The bad
E N D
Geometric Sound Propagation • Micah Taylor
Horrible and Ugly Helmholtz-Kirchhoff integral equation for waves
Geometric methods • The good • Can be very fastHeavily explored field, many optimization techniques • The bad • Not physically accurateIgnores wavelength properties and some effects are very expensive • Still better than the ugly
Geometric methods • All are variants of Raytracing • Propagate rays in scene • Intersect with scene geometry • Reflect as needed • Convolve sound at listener
Primitive intersection • Many ways to do it- Plücker coordinate is the hip way: • Transform triangle and ray into 6 dimension coordinates • Determine direction triangle edges ‘wrap’ around ray (clockwise vs anti-clockwise) • Test ray against all three triangle edges to intersect
Specular reflection • Very easy with rays • Assumes flat surface
Sound convolution • For each contributing path: • Delay of sound • Uses distance of path • Attenuation from distance • Inverse square • Attenuation from reflection • Per material absorption
Sound convolution • After all path convolutions are found: • Sum all convolutions into one • Apply convolution to input sound source • Output resulting audio
Difficult operations • Diffraction • Sounds ‘bends’ around corners • Diffuse reflection • Surfaces can scatter reflection • Wave properties • Interference
Single Rays Raytracing
Raytracing • Since rays are discrete, listener may be between rays • Greater distance results in less rays • Needs large number of primary rays • Reflections can further spread out rays Listener Source
Raytracing • Advantages • Simple to implement • Disadvantages • Suffers from aliasing
Volumetric Beams Beam tracing
Beam tracing • Relies on BSP tree • Made famous in Doom • Divides scene into cells • Slow to generate • Cannot be dynamically updated
Beam tracing • Advantages • Good accuracy • Volume method • Disadvantages • Complex to implement • Only static geometry
Volumetric Frustum Frustum tracing
Frustum tracing • Relies on some form of sub-division to minimize error Triangle coverage is not perfectly accurate
Frustum tracing • Advantages • Very fast performance • Supports dynamism • Mostly volume method • Disadvantages • Complex to implement • Small inaccuracies in rendering
References • A Beam Tracing Approach to Acoustic Modeling for Interactive Virtual Environments (1998), Funkhouser et al. • Interactive Sound Propagation in Dynamic Scenes Using Frustum Tracing (2007), Lauterbach at al. • Calculating the acoustical room response by the use of a ray tracing technique (1968), Krokstad et al. • Ray Tracing Triangular Meshes (1997), Amanatides et al.