Control of audio effects using volumetric data
AssigneeMicrosoft Technology Licensing, LLC
InventorsJeffrey Ryan Ballard, Robert L. Ridihalgh
Life of this patent
Estimating the term…
Abstract
One example method for processing sound in a computer environment includes recognizing a location of a listener in the computer environment, identifying a shape matrix including, for each of a plurality of vectors intersecting the location of the listener, a distance from the location of the listener to an environmental boundary of the computer environment along the vector, selecting an audio filter based on the shape matrix, and outputting sound filtered by the audio filter.
Claims19
A method for processing sound in a virtual environment, the method comprising:
- recognizing a listener voxel corresponding to a location of a listener in the virtual environment;
- defining a plurality of direction vectors intersecting the listener voxel and spanning a 3D volume surrounding the listener voxel, each direction vector terminating at a terminal voxel in the virtual environment;
- computing a shape matrix including, for each of the plurality of direction vectors, a first element specifying distance from the listener voxel to the terminal voxel of that direction vector, and a second element specifying a level of sound opacity at the terminal voxel of that direction vector;
- correlating the shape matrix to a model listener environment from among a finite number of model environments of predetermined shape;
- selecting a listener audio filter based on the model listener environment;
- filtering the sound based on the listener audio filter;
- and
- outputting the filtered sound.
A method for processing sound in a virtual environment, the method comprising:
- recognizing a listener voxel corresponding to a location of a listener in the virtual environment;
- defining a plurality of sound-agnostic direction vectors, each sound-agnostic direction vector originating at the listener voxel, passing through a different listener-neighbor voxel, and terminating at a terminal voxel in the virtual environment, the plurality of direction vectors spanning a 3D volume surrounding the listener voxel irrespective of sound propagation in the virtual environment;
- computing a shape matrix including, for each of the plurality of sound-agnostic direction vectors, a first element specifying distance from the listener voxel to the terminal voxel of that direction vector, and a second element specifying a level of sound opacity at the terminal voxel;
- selecting a listener audio filter based on the shape matrix;
- filtering the sound based on the listener audio filter and
- outputting the filtered sound.
A computing system for providing directional audio in a voxelized virtual environment, the computing system comprising:
- a logic machine;
- and
- a storage machine holding instructions executable by the logic machine to:
- recognize a listener voxel corresponding to a location of a listener in the virtual environment;
- recognize an emitter voxel corresponding to a location of a sound emitter in the virtual environment;
- define a first plurality of sound-agnostic direction vectors, each of the first plurality of sound-agnostic direction vectors originating at the listener voxel, passing through a different listener-neighbor voxel, and terminating at a terminal voxel in the virtual environment, the first plurality of direction vectors spanning a 3D volume surrounding the listener voxel, irrespective of sound propagation in the virtual environment;
- compute a listener shape matrix including, for each of the first plurality of sound-agnostic direction vectors, a first element specifying distance from the listener voxel to the terminal voxel of that direction vector, and a second element specifying a level of sound opacity at the terminal voxel of that direction vector;
- define a second plurality of sound-agnostic direction vectors, each of the second plurality of sound-agnostic direction vectors originating at the emitter voxel, passing through a different emitter-neighbor voxel, and terminating at a terminal voxel in the virtual environment, the second plurality of direction vectors spanning a 3D volume surrounding the emitter voxel irrespective of sound propagation in the virtual environment;
- compute an emitter shape matrix including, for each of the second plurality of sound-agnostic direction vectors, a third element specifying distance from the emitter voxel to the terminal voxel of that direction vector, and a fourth element specifying a level of sound opacity at the terminal voxel of that direction vector;
- select a listener audio filter based on the listener shape matrix;
- select an emitter audio filter based on the emitter shape matrix;
- and
- output audio filtered by the by the emitter audio filter and by the listener audio filter.
Dependencies are inferred from the claim text.