An Analysis of Accurate, Real-Time Reproduction of 3D Acoustics in Virtual Environments
Total Page:16
File Type:pdf, Size:1020Kb
An Analysis of Accurate, Real-Time Reproduction of 3D Acoustics in Virtual Environments A Dissertation Presented to the Graduate Faculty of the University of Louisiana at Lafayette In Partial Fulfillment of the Requirements for the Degree Doctor of Philosophy Scott McDermott Fall 2014 © Scott McDermott 2014 All Rights Reserved An Analysis of Accurate, Real-Time Reproduction of 3D Acoustics in Virtual Environments Scott David McDermott APPROVED: C.-H. Henry Chu, Chair Christoph Borst Professor of Computer Science Associate Professor of Computer Science The Center for Advanced Computer Studies The Center for Advanced Computer Studies Anthony Maida Mary Farmer-Kaiser Associate Professor of Computer Science Interim Dean of the Graduate School The Center for Advanced Computer Studies Acknowledgments I would like to acknowledge the many people, both friends and family, who have supported me (or patiently sat by and watched me toil) through the many, many years that it took to get to this point. You are too numerous to list here, but your collective strength and encouragement was the foundation of my efforts. We are nothing without those near us. Thank you all! To my wife Diana, who, through the countless years of trials and chaos has learned how to be patient and yet constant, consistent and yet not insistent. Simply put, there would have been no possibility of conclusion without your love and encouragement. Thanks are simply not sufficient. I would be remiss not to mention my daughter and son, who make my life complete. I had every intention to complete this before each of your births so that you would not need to suffer through my distraction. Thank you as well for being patient and understanding. I hope that you have learned perseverance and resolve from this experience. Finally, to my advisor, Dr. Henry Chu, others probably cannot comprehend how patient and helpful you have been through all of these years. Simply put, I would not have finished this document, many times over, except for your understanding and backing. Table of Contents Acknowledgments.................................................................................................................... iv Table of Figures ....................................................................................................................... ix Table of Tables ..........................................................................................................................x Table of Equations ...................................................................................................................11 Introduction ..............................................................................................................................12 Abstract ........................................................................................................................12 What is 3D Sound? ......................................................................................................13 Goals ............................................................................................................................15 Objectives ....................................................................................................................16 Algorithms ...............................................................................................................................18 Previous Work .............................................................................................................20 Geometrical vs. Wave Equation Based Methods .............................................21 Beam Trees (2004) ...........................................................................................22 Accelerated Beam Tracing (2009) ...................................................................22 Precomputed Wave Simulation (2010) ............................................................23 Augmented Reality (2011) ...............................................................................24 Reverberation Shading (2011) .........................................................................25 Beam Tracing with Refraction (2012) .............................................................25 Precomputed Acoustic Transfer Operators (2012) ..........................................26 Spatial Sound and Visual Fidelity (2013) ........................................................27 Hybrid Approach - Acoustic Radiance Transfer (2013) ..................................28 Wave-Based Sound in Open Scenes (2013) ....................................................29 Current Work ...............................................................................................................30 Direct Paths Algorithm ....................................................................................31 Brute Force Algorithm .....................................................................................33 Reflected Paths Algorithm ...............................................................................34 Bouncing Reflections Algorithm .....................................................................36 Wall Dispersion Algorithm ..............................................................................41 Matrices of Impulses Algorithm ......................................................................42 Physics Algorithm ............................................................................................43 Stochastic Algorithm .......................................................................................44 Design and Implementation .....................................................................................................45 Implementation Overview ...........................................................................................45 Algorithmic Goal .............................................................................................46 Latency .............................................................................................................47 vi Object-Oriented Design ...................................................................................48 The TDS Simulator and Algorithms ............................................................................48 The TDS Simulator ..........................................................................................49 Scene3D Data Structure ...............................................................................................52 Environment3D Hierarchy ...............................................................................52 Structure Data File ...............................................................................53 Structure Objects ..................................................................................57 Room Objects .......................................................................................58 Faces Objects .......................................................................................58 Wall Openings Objects ........................................................................58 Acoustic Materials ...............................................................................59 Sound3D Data Structure ..............................................................................................59 AcousticsAlgorithm Hierarchy ........................................................................60 SoundPlaySimple Algorithm Object....................................................60 SoundPlayDirectX Algorithm Object ..................................................61 SoundPlayAlg Object...........................................................................62 SoundPlayDirectPaths Algorithm Object ............................................63 SoundPlayBouncingReflections Algorithm Object .............................64 Reverberations Data Structure .........................................................................64 Impulse Response Data Structure ....................................................................66 Attenuation Algorithm .....................................................................................67 Sound Storage ..................................................................................................72 Sound File Storage ...............................................................................73 Sound Sample Storage .........................................................................75 Convolution Algorithm ....................................................................................77 Integrated Libraries ......................................................................................................80 OpenGL® Library ...........................................................................................82 DirectSound® Library .....................................................................................83 FFTW Library ..................................................................................................84 Experiment Structure ...................................................................................................89 Testing Modes ..................................................................................................89 Experimental Testing Data Structure ...............................................................90 Portability .....................................................................................................................90