Game Engine Architecture 13
【Game Engine Architecture 13】
1、describe an arbitrary signal x[n] as a linear combination of unit impulse。
每个信号都可以用 unit impulse 来表示,即原始的每一个数值 x[] 与 q[n-k] 的卷积和。


2、convolution(卷积)



下面公式被称为 convolution sum(卷积和):

3、Convolution in Continuous Time
everything works out in pretty much the same way. The only difference is that summations become integrals.
在连续信号中,连续函数变成了求和函数。

上面的式子叫作 convolution integral(卷积积分)。
4、Some Properties of Convolution

5、A Brief Review of Complex Numbers

复数相乘:

两个复数相乘,其 magnitude 等于两者magnitude积,其 arg 等于两者arg的和。

The fact that multiplication of complex numbers causes their angles (arguments) to add means that complex multiplication produces a rotation in the complex plane.
6、复数公式

multiplying j by itself is like rotating a unit vector by 90 degrees in the complex plane. In fact, multiplying any complex number by j has the effect of rotating it by 90 degrees.

7、The Complex Exponential and Euler’s Formula
For any complex number c with |c| = 1, the function f (n) = cn, with n taking on a sequence of increasing positive real values, will trace out a circular path in the complex plane.

The most general form of a real-valued sinusoidal signal is:

we can write Equation (14.10) in terms of complex numbers as follows?

8、The Fourier Series
let’s turn our attention again to the task of representing a signal as a sum of sinusoids. Doing this is easiest when the signal is periodic. In this case, we can write the signal as a sum of harmonically related sinusoids:
把信号表示成正弦和,并且使用复数表示正统和?

9、The Fourier Transform
In general, an arbitrary signal may contain components at any frequency, not just frequencies that are harmonically related. the discrete set of harmonic coefficients ak in Equation(14.14) becomes a continuum of values representing “how much” of each frequency
the signal contains.
每种信号都有任意的 frequency 信号组成(只是 weight不同)。14.14中的 a(k)指的就是 weight。
A new function X(w) whose independent variable is the frequency w rather than time t, and whose value represents the amount of each frequency present in the original signal x(t). We say that x(t) is the time domain representation of the signal, while X(w) is its frequency domain representation.
frequency 公式与 time 公式可以互相转换,这种转换叫做 Fourier transform(傅立叶变换)。

10、Bode Plots
When visualizing the Fourier transform, we often draw it using two plots. For example, we might plot its real and imaginary components. Or we might plot its magnitude and its argument (angle) on two different plots—a visualization known as a Bode plot (pronounced “Boh-dee”).

11、Fourier Transforms and Convolution


Sometimes it is more convenient to perform a convolution on the time axis using a system’s impulse response h(t), while at other times it’s more convenient to perform a multiplication in the frequency domain using the system’s frequency response H(w).
12、linear time-invariant
A time-invariant system is one for which a time shift in the input signal causes an equal time shift in the output signal. In other words, the behavior of the system does not change over time.
linear 指weight 加权求和,time-invariant 指与时间无关。
13、Filter
A filter is an LTI system that attenuates a selected range of input frequencies while leaving all other frequencies unaltered.
1)A low-pass filter retains low frequencies while attenuating high frequencies.
2)A high-pass filter does the opposite, retaining high frequencies and attenuating lower frequencies.
3)A band-pass filter attenuates both low and high frequencies but retains frequencies within a limited passband.
band-pass 减弱整个区间信号,但passband(区间)的信号保持。
4)A notch filter does the opposite, retaining low and high frequencies but attenuating frequencies within a limited stopband.
notch filter 保持整个区间信号,但stopband(区间)的信号减弱。

The equalizer (EQ) found on most high-fidelity audio equipment permits the user to adjust the amount of bass, mid-range and treble that is output. An EQ is really just a collection of filters tuned to different frequency ranges and applied in series to an audio signal.
14、Microphones
Different microphones have different sensitivity patterns, known as polar patterns.
1)omnidirectional,全方向麦
2)bidirectional,双向麦
3)cardioid,心形采样麦

15、Speaker Layouts: Stereo(立体声)
A stereo device such as an iPod, the sound system in your car or your grandpa’s portable “boom box” supports at least two speakers for the left and right stereo channels.
Some stereo systems also support a subwoofer(低音炮) or LFE (low-frequency effects) speaker. Such systems are sometimes called 2.1 systems—two for the left and right, and “dot one” for the LFE speaker.
Stereo 也被叫做 2.1 system,意思是2个speaker 加一个subwoofer低音炮。
16、Speaker Layouts: Surround Sound
Home theater surround sound systems typically come in two flavors: 5.1 and 7.1. A 7.1 system adds two additional speakers, surround left and surround right, which are intended to be placed directly to either side of the listener.

Dolby technologies 指的是 5.1、7.1 system。
17、amplifier(信号放大器)
18、Volume/Gain Controls(信号缩小器)
A volume control is basically an inverse amplifier, also known as an attenuator.
19、Digital Audio Technology
The distinction between analog and digital audio technologies corresponds exactly to the distinction between continuous-time and discrete-time signals.
20、Analog-to-Digital Conversion: Pulse-Code Modulation(模拟-数字调制器)

21、Shannon-Nyquist sampling theorem
In principle an analog signal can be recorded digitally without any loss of fidelity, provided that it is sampled at a frequency twice that of the highest-frequency component present in the original signal.
22、Reverb Regions
One common approach to modeling the wet characteristics of a play space is to annotate the game world with manually placed regions, each of which is tagged with appropriate reverb settings such as pre-delay, decay, density and diffusion.
把地图手动分块,每一块给予不同的 reverb 属性。
不同的区域可以做 cross-blend。

23、Obstruction, Occlusion and Exclusion

24、Accounting for Diffraction

可以使用 Multiple Raycast 来判定是否发生 diffraction。

25、Sound Portals in The Last of Us
we used a network of interconnected regions. There were two kinds of regions: rooms and portals. For each sound source, we found a path from the listener to the sound by using connectivity information provided by the sound designer when laying out the regions. If both the sound source and listener were in the same room, we’d use the tried and true method of performing obstruction/occlusion/exclusion analysis that we used on the Uncharted series. But if the sound source was in a room directly connected to the listener’s room via a portal, we would play the sound as if it were located in the portal region.

26、digital signal processor (DSP)
27、Audio Engine Architecture

28、The Audio Processing Pipeline

29、
30、
31、
32、
33、
34、
Game Engine Architecture 13的更多相关文章
- Game Engine Architecture 11
[Game Engine Architecture 11] 1.three most-common techniques used in modern game engines. 1)Cel Anim ...
- Game Engine Architecture 10
[Game Engine Architecture 10] 1.Full-Screen Antialiasing (FSAA) also known as super-sampled antialia ...
- Game Engine Architecture 9
[Game Engine Architecture 9] 1.Formatted Output with OutputDebugString() int VDebugPrintF(const char ...
- Game Engine Architecture 8
[Game Engine Architecture 8] 1.Differences across Operating Systems • UNIX uses a forward slash (/) ...
- Game Engine Architecture 7
[Game Engine Architecture 7] 1.SRT Transformations When a quaternion is combined with a translation ...
- Game Engine Architecture 6
[Game Engine Architecture 6] 1.Data-Parallel Computations A GPU is a specialized coprocessor designe ...
- Game Engine Architecture 5
[Game Engine Architecture 5] 1.Memory Ordering Semantics These mysterious and vexing problems can on ...
- Game Engine Architecture 4
[Game Engine Architecture 4] 1.a model of multiple semi-independent flows of control simply matches ...
- Game Engine Architecture 3
[Game Engine Architecture 3] 1.Computing performance—typically measured in millions of instructions ...
随机推荐
- 在 Asp.Net Core 中安装 MVC
在 ASP.NET Core 中安装 MVC 到目前为止,我们在本系列视频中使用的 ASP.NET Core 项目是使用“空”项目模板生成的.目前这个项目没有设置和安装 MVC. 两个步骤学会在 AS ...
- 宏任务和微任务:setTimeout和Promise执行顺序
先以一道面试题做引子: 写出这段程序的输出内容: setTimeout(function(){ console.log(); },); new Promise(function(a,b){ conso ...
- NOI2016优秀的拆分
一种想法是枚举分割位置, 然后考虑前面部分有多少种可行的AA拆分方式, 后面部分有多少种可行的BB拆分方式, 然后乘法原理即可 那么问题是如何快速求出合法方案 解法是首先枚举长度len, 然后将序列分 ...
- 洛谷 P1440 求m区间内的最小值
传送门 思路 由于数据范围很大,所以使用单调队列,和滑动窗口这道题类似 首先第一个数输出\(0\),因为第一个数之前没有数 然后通过样例我们发现,最后一个数并没有派上什么用场,所以循环\(n-1\)轮 ...
- VC修改本机IP地址
http://www.vcchar.com/thread-1527-1-1.html 设置IP地址只需要更改注册表中关于适配器的相应设置,但更改后需要重新启动系统才能生效,而AddIPAddress函 ...
- MySQL实战45讲学习笔记:第八讲
一.今日内容概要 我在第 3 篇文章和你讲事务隔离级别的时候提到过,如果是可重复读隔离级别,事务 T 启动的时候会创建一个视图 read-view,之后事务 T 执行期间,即使有其他事务修改了数据,事 ...
- CentOS6.9安装MySQL5.6
1 检查系统是否自带MySQL 检查系统是否自带MySQL yum list installed | grep mysql 下面结果说明系统自带MySQL 卸载系统自带MySQL yum -y rem ...
- 使用go-mysql-elasticsearch同步mysql数据库信息到ElasticSearch
本文介绍如何使用go-mysql-elasticsearch同步mysql数据库信息到ElasticSearch. 1.go-mysql-elasticsearch简介 go-mysql-elasti ...
- EFCore代码实践
参考:https://www.cnblogs.com/Wddpct/p/6835574.html 控制台程序依赖注入参考:https://www.cnblogs.com/Wddpct/p/721920 ...
- 实战django(二)--登录实现记住我
上节初步实现了登录和注册模块,这节我们进一步实现“记住我”功能. 大体功能分为以下模块: 1.在登录时如果勾选记住我,那么就将用户username存进cookie中,跳转到index页面: 2.此时, ...