Unity3D中的(Camera组件、AudioSource 组件、AudioListener 组件)

目录

Camera组件

AudioSource 组件

AudioListener 组件


Camera组件


Unity3D中的(Camera组件、AudioSource 组件、AudioListener 组件)_第1张图片 Unity中 的Camera

 

ClearFlags:清除标记;决定屏幕中哪部分被清除。一般用于多台摄像机来描绘不同对象的情况,有一下三种模式。

  • Skybox:天空盒。默认模式。在屏幕中的空白部分将显示当前摄像机的天空盒。如果当前摄像机没有设置天空盒,会默认用Background色。
  • Solid Color:纯色。选择该模式屏幕上的空白部分将显示当前摄像机的background色。
  • Depth only:仅深度。该模式用于游戏对象不希望被裁剪的情况。
  • Don't Clear:不清除,该模式不清楚任何颜色和或深度缓存,但这样做每帧渲染的结果都会叠加在下一帧之上。一般与自定义的Shader(着色器)配合使用。

Background:  设置背景颜色。在镜头中的所有元素渲染完成且没有指定skybox的情况下,将设置的颜色应用到屏幕的空白处。

Culling Mask:剔除遮罩. 根据对象所指定的层来控制渲染的对象。

Projection:投射方式。
  Perspective:透视。摄像机将用透视的方式来渲染游戏对象。
    Field of view:透视模式的视野范围。用于控制摄像机的视角宽度以及纵向的角度尺寸。
  Orthographic:正交。摄像机将用无透视的方式来渲染游戏对象。
    Size:大小。用于控制正交模式摄像机的视口的大小。、

Clipping Planes: 剪裁平面。摄像机开始渲染与停止渲染之间的范围。

  •   Near:近点。摄像机开始渲染的最近的点。
  •   Far:远点。摄像机开始渲染的最远的点。

Viewport Rect:标准视图矩形。用四个数值来控制摄像机的视图将绘制在屏幕的位置和大小,使用的是屏幕坐标系,数值在0~1之间。

  • 参数X、 Y决定区域起点, W,H决定区域的宽高。屏幕坐标系是左下角为原点X = 0, Y = 0,屏幕最上方Y = 1,屏幕最右方X=1。
  •  例如X = 0, Y=0, W = 1, H = 1 (默认)表示画面显示于整个屏幕。X-0.5, Y-0, W=0.5, H-1表示画面显示于右半屏幕

Depth:深度 ,用于控制多个摄像机的渲染优先级,优先级高的摄像机拍摄的画面将覆盖在优先级低的摄像机的画面上

Rendering Path:渲染路径。用于指定摄像机的渲染方法。

  •   Use Player Settings:使用Project Settings-->Player中的设置。
  •   Vertex Lit:顶点光照。摄像机将对所有的游戏对象作为顶点光照对象来渲染。
  •   Forward:快速渲染。摄像机将所有游戏对象将按每种材质一个通道的方式来渲染。
  •   Deferred Lighting:延迟光照。摄像机先对所有游戏对象进行一次无光照渲染,用屏幕空间大小的Buffer保存几何体的深度、法线以及高光强度,生成的Buffer将用于计算光照,同时生成一张新的光照信息Buffer。最后所有的游戏对象会被再次渲染,渲染时叠加光照信息Buffer的内容。此功能只有收费版才支持。

Target Texture: 目标纹理。用于将摄像机视图输出并渲染到屏幕。一般用于制作导航图或者画中画等效果。

HDR:高动态光照渲染,用于启用摄像机的高动态范围渲染功能,因为人眼对低范围的光照强度更为敏感,所以用高动态范围渲染能让场景变得更为真实,光照的变化不会显得太突兀。

Target Display:定义要渲染给哪个外部设备。1到8之间。


AudioSource 组件


音频可以分为两大类:

  • 一类为游戏背景音乐, 一类为游戏的音效。
  • 前者适合于较长的音频处理, 如游戏背景音乐;
  • 第二类则适合于较短的游戏音乐, 如枪击声、走路声等一瞬间即可播放完毕的音效。

Unity中目前支持的音频剪辑(Audio Clip)有4种音频格式。

  • Mp3: 适合较长音频, 作为背景音乐。
  • Ogg:适合较长音频, 作为背景音乐。
  • Wav: 适合较短音频,作为环境音效。
  • Aif: 适合较短音频, 作为环境音效。
  • 注: 制作反应速度快的音效,适合使用不压缩的音频格式。

AudioClip 音频剪辑(或者音频片段)

  • 我们导入到 Unity 中的所有声音文件,在Unity 引擎中的资源类型都是 AudioClip 类型。
  • 点击进入官网了解该Audio Clip

AudioSource 组件:

  • 音源是场景中在某个位置的发声装置,好像一个喇叭。它播放着音频片段 (Audio Clip)。
  • 这就类似于 AudioSource 像我们电脑上的播放器 , AudioClip 像一首音乐。  可以用 AudioSource 来 播放 AudioClip。
  • 点击进入官网了解 AudioSource 组件

如何给物体添加 AudioSource 组件:

  • 有一个快速简单的方法, 就是你把一个 AudioClip 剪辑  拖到某个物体上,  该物体就会自动添加 AudioSource 组件,

音频剪辑(AudioClip) 的属性: 

Unity3D中的(Camera组件、AudioSource 组件、AudioListener 组件)_第2张图片 音频剪辑的属性

 Force To Mono(强制单生道放音): 当启用此选项时, 多声道音频将在打包之前混合到单声道,此选项适合在移动设备上开启。

Normalize:启用此选项后,将在 “Force To Mono” 混音过程中对音频进行标准化。

Load In Background (后台加载): 当启用此选项时,音频的加载将在一个单独的线程上以延迟的方式加载, 而不会阻塞主线程。 此选项适合较大尺寸背景音乐的加载。

Ambisonic (高保真度立体响): 作为高保真立体音响保存

Load Type (音频加载的方式):

  •               Decompress On Load 选项是默认选项,在加载时解压缩,而不是在播放时解压缩。 使用此选项可用于较小的压缩声音, 以避免即时解压缩的性能开销, 所以不要使用此选项用于大文件。
  •               Compressed In Memory:在内存中压缩处理。 使声音在内存中压缩并在播放时解压缩, 此选项有轻微的性能开销。
  •               Streaming : 快速解码音频, 播放的时候直接从硬盘中取数据流, 适合大的背景音乐文件, 建议同时最多播放一到两个                                 Streaming 类型的音频

Preload Audio Data (预先加载的音频数据):如果启用,音频剪辑将在加载场景时被预加载。默认情况下,这是为了反映标准的Unity行为,当场景开始播放时,所有的 AudioClips 都已经加载完毕。如果没有设置此标志,则音频数据将在第一个AudioSource.Play() / AudioSource.PlayOneShot()上加载,或者可以通过AudioSource.LoadAudioData()加载,然后通过AudioSource.UnloadAudioData()再次卸载。

Compression Format (数据的压缩格式):

  • PCM: 这个选项提供更高的质量, 以牺牲较大的文件大小, 最好是非常短的声音效果。
  • Vorbis: 文件更小但稍低的音频质量, 这种格式最好适用于中等长度的音效和音乐。
  • ADPCM: 适合需要大量演奏的声音, 如背景音乐、脚步声等。

Quality(品质): 当 Compression Format 设置为Vobis时, 可以设置1-100的品质。

Sample Rate Setting (采样率设置):

  •            Preserve Sample Rate:  保持采样率未修改(默认值)。
  •            Optimize Sample Rate: 该设置根据采样的最高频率自动优化采样率。
  •            Override Sample Rate: 允许手动设置采样率。

AudioSource 组件:

Unity3D中的(Camera组件、AudioSource 组件、AudioListener 组件)_第3张图片 音频剪辑的属性
  •  Audio Clip (音频剪辑):指向即将播放的音频片段(Audio Clip)。可以通过手动或脚本的方式赋值。
  • Output (音源输出): 音频剪辑可以输出到音频监听器(AudioListener)或者(AudioMixer)。当设置为空时,即代表输出到AudioListener,而设置到AudioMixer时需要指定具体的AudioMixer
  • Mute (是否静音): 即音源在播放时,但是被静音。与关闭音源的区别时,当恢复时,播放的进度不同。{对于游戏中音效的暂停最好使用这项,它不会卸载声音数据,可以做到及时播放,音效一般比较多、占用内存小,使用静音可以让画面快速响应,且可以立刻恢复当前音效,暂停音乐可以使用 AudioSource 的Pause、Stop或者GameObject的enable,一般不需要及时响应,此时可以使用Stop,它会卸载音频数据节省内存。当然如果内存富余也可以使用其它方式,注意Mute跟其它方式的区别:Mute的音源在继续播放着,只是听不到而已,Pause是播放暂停,而Stop是完全停止,恢复时将从头播放。}
  • BypassEffects(忽略效果):应用到音频源的快速“直通”过滤效果, 用来快速打开或关闭所有特效。
  • Bypass Listener Effects( 忽略监听效果):用来快速打开或者关闭监听器特效。
  • Bypass Reverb Zones (忽略混响器):用来快速打开或者关闭 混响器。
  • Play On Awake (自动播放):如果启用,声音将在场景启动时开始播放。 如果禁用,则需要手动调用Play()方法执行播放。。 大型游戏开发项目中一般都会去掉这个勾选, 而是通过使用脚本的方式在程序中进行控制播放。
  • Loop (是否循环播放):启用此选项可在音频剪辑到达结尾时进行循环播放。
  • Priority ( 确定优先级):决定了当前音源在当前场景存在的所有音源中的播放优先级。(优先级: 0 = 最重要. 256 = 最不重要. 默认值 = 128.). 背景音乐最好使用0,避免它们有时被其它音源替换出去。{一般手机或者其它播放设备最多允许32个音源同时播放,这个优先级参数决定了在超出音源数目时,需要暂时关闭一些不重要的音源,优先播放更重要的音源}
  • Volume (音频的音量):此音量代表了监听器处于距离音源1米时的音量大小,代表了最大音量处的声音大小。
  • Pitch (音频音调): 可以改变音调数值, 可以加速或者减速播放音频剪辑的速度,默认值为1,表示正常的速度 。当<1时,慢速播放,当>1时,快速播放,速度越快,则音调越高。
  • Stereo Pan (立体声道):此数值在[-1,1]之间变化,代表了2D音源的左右声道占比,默认值为0。最小值为-1, 表示采用左声道播放。最大数值为1时,采用右声道播放。此数值针对2D音源或者2D、3D混合音源有效,纯3D音源无效
  • Spatial Blend (空间混合):此数值在[0,1]之间变化,设置该音频剪辑能够被3D空间计算影响多少,为 0 时为 2D音效,为1时为全3D音效,还是二者插值的复合音源。
  • Reverb Zone Mix (混响器混合):设置输出到混响区域中的信号量,一般在[0,1]范围内变化, 不过也允许额外最多放大10分贝(1 - 1.1]来增强声音的远近效果。{也就是说,回响效果的回响距离等很多复杂参数主要由回响滤波器实现,而回响音量大小主要由此因子来简单控制}

3D Sound Settings: 与Spatial Blend参数成比例应用的设置。

Doppler Level (多普勒级别):在[0,5]之间变化,默认值为1,决定了音源的多普勒效应的份量,如果设置为0,则没有多普勒效应。{多普勒效应指的是当监听器与音源之间发生相对运动时,声音传递速度发生变化时的效果。

假设有一架飞机掠过上空,飞机上的警报器每个一秒钟发出一次声音,如果相对静止,则听到的效果是完整的每个一秒一次警报(尽管发出到听到需要较长的时间,但是间隔应该是一样的),而当飞机向我快速靠近时,由于距离在不断缩短,从发声到听到的距离在不断缩小,因此传递所化的时间越来越少,我方听到的警报应该是越来越紧促,而非均匀的每秒一次,靠近速度越快,警报间隔越短。当飞机快速离去时,则情况恰好相反,警报声音节奏越来越松缓。}

Spread (传播角度):设置3D立体声或者多声道音响在扬声器空间的传播角度。

Volume Rolloff  (音频的衰减): 可以设置声音在距离上的衰减速度, (具体衰减数值由曲线决定,X-距离,Y-衰减后剩余百分比).

Min Distance (最小距离):默认值为1米,代表了音量曲线中的最大音量位置。超越最小距离时,声音将逐渐衰减。如果增大最小距离,则将相当于增大了3D世界中的声音,因为最小距离以下的位置均获得最大音量。如果减小最小距离,则相当于减小了3D世界中声音。{因为由Volume参数可知,在曲线上1米处为最大音量,默认曲线<1米处均获得最大音量,而当MinDistance<1时,默认曲线中X=1处的音量响应也会变小。注意上图中Listener竖线代表了监听器与当前音源的相对距离,而与Volume曲线的交点即是:1米处的最大音量经过3D世界距离传播到当前位置而衰减后的音量大小,即如果在曲线上,1米处Y坐标是0.8,而Listener处Y坐标是0.4,那么最终音量是衰减了50%,此参数与Volume参数共同作用输出最终音量大小,也即Volume*0.5}

Max Distance (最大距离):当超出此距离时,声音将停止衰减。{注意这里是停止衰减,也就是说,后续更远处听到的声音将保持在最大距离点的声音大小,不代表声音为0}


AudioListener 组件


收听者(Audio Listener) 在场景中接收所有来自Audio Source的声音, 处理后传递至扬声器播放。记住:音频监听(Audio Listener)组件与音频播放(Audio Source)组件是播放音乐的必要条件。

Audio Listener 本身没有属性, 它相当于人的一对耳朵。虚拟的游戏 世界中可能有许多音频源,如果没有监听, 相当于嘈杂的环境中人没有耳朵一样。

Audio Listener组件在一个场景中只能有一个, 即只能有一个收听者,一般来说,将此组件添加至主角上,或者观察主角的摄像机上。创建摄像机时,摄像机对象上自动包含了AudioListener组件。

要想获得清晰的音频播放效果, 有如下两种方式:

  • 在主摄像机(Main Camera)对象上挂上音频播放(Audio Source)组件, 音频播放组件加载音频剪辑即可。这种方式在一些简单2D小游戏中使用广泛,且简单。
  • 建立一个空对象, 在此空对象上加载音频源 (Audio Source)组件, 保持此对象与具备音频监听组件的对象在一定范围内。这种方式在一般的3D场景中非常广泛。

 

你可能感兴趣的:(Unity3D)