unity学习笔记10

一、生命周期函数

1.Awake()

调用时间:对象被激活或创建时。

用途:通常用于初始化对象的状态,获取组件引用或执行其他在脚本生命周期早期需要完成的任务。

2.OnEnable():

调用时间:对象激活时,包括对象被创建和SetActive(true)时。

用途:在对象被激活时调用,通常用于启用资源或订阅事件。

3.Start():

调用时间:在Awake()和第一帧Update()之间。

用途:在脚本实例被创建后,第一次Update()之前调用。通常用于初始化一些需要在第一帧前完成的内容。

4.FixedUpdate():

调用时间:固定时间间隔.、与物理相关。

用途: 主要用于处理与物理引擎相关的逻辑,例如处理刚体运动、施加力、检测碰撞等。

5.Update():

调用时间:每一帧。

用途:处理主要的游戏逻辑,例如用户输入、动画等。

6.LateUpdate():

调用时间:在所有Update()调用之后。

用途:通常用于处理在Update()中计算后的逻辑,例如相机跟随。

7.OnDisable():

调用时间:对象禁用时,包括SetActive(false)时。

用途:在对象被禁用时调用,通常用于取消资源订阅或清理操作。

8.OnDestroy():

调用时间:对象被销毁时。

用途:在对象被销毁时调用,通常用于执行一些清理工作,释放资源。

二、Camera

在Unity中,相机(Camera)用于定义视图、渲染场景以及创建视觉效果。

1.主要属性

位置和旋转: 相机有位置(Position)和旋转(Rotation),用于确定相机在场景中的位置和朝向。

投影类型: 相机可以是透视投影(Perspective)或正交投影(Orthographic),分别用于3D和2D场景。

2.背景

背景颜色: 定义相机背景的颜色。
天空盒(Skybox): 可以使用天空盒来定义相机的背景,创建更具环境感的场景。
 

3.渲染路径和图像效果

相机的渲染路径定义了渲染管线的方式,例如前向渲染(Forward Rendering)和延迟渲染(Deferred Rendering)。

可以通过添加图像效果(Post-Processing Effects)来改变相机渲染的最终结果,如模糊、颜色校正等。

Depth(深度):决定渲染顺序,深度值较小的相机将在深度值较大的相机之前进行渲染。

Background Color(背景颜色):定义相机背景的颜色。

Viewport Rect(视口矩形):定义相机在屏幕上的位置和大小。

三、音频组件

1.Audio Listener(音频监听器):

作用:Audio Listener 组件附加在摄像机上,用于监听场景中的所有声音。一个场景通常只有一个 Audio Listener。没有这个组件将无法听到声音

主要属性和功能:

Volume ( 音量)︰控制所有听众(Audio Listener)的整体音量。

Pause (暂停):暂停或恢复场景中所有声音的播放。

Velocity Update Mode 速度更新模式)︰设置音频监听器速度的更新模式,用于影响3D音效效果。

2.Audio Source(音频源):

添加方式:Audio Source 是一个游戏对象上的组件,可以通过在Inspector视图中选择"Add Component" -> "Audio" -> "Audio Source" 来添加。

主要属性和功能:

Audio Clip (音频剪辑)︰指定要播放的音频文件,可以是.wav、.mp3等格式的音频文件。

Volume (音量):控制音频源的音量,取值范围为0.0(静音)到1.0(最大音量)

Pitch (音调):控制音频源的音调,用于改变音频的音高。

Loop(循环)︰是否循环播放音频。

Spatial Blend(空间混合)︰控制音频在3D空间中的混合,用于实现音频的3D空间效果。

3DSound Settings (3D音效设置)︰包括Min Distance(最小距离)、Max Distance(最大距离)等设置,影响音频的立体声效果。

Play On Awake(启动时播放)︰是否在游戏对象被激活时自动播放音频。

通过脚本控制音频:

申明两个变量,再将音频文件拖拽上来。

public AudioClip music;

public AudioClip se;
 

获取播放器组件

private AudioSource player;
player = GetComponent<AudioSource>();

设定播放的音频片段: player.clip = music;

循环播放: player.loop = true;

设置音量:player.volume = 0.5f;

播放控制: player.Play();

暂停和继续播放:player.Pause);   player.UnPause();

停止和开始播放: player.Stop(): player.Play();

两者的区别:第一组是从哪里停止的就从哪里开始,第二组是停止后从头开始播放。

通过按键(空格)控制

void updata (){

if( Input.GetKeyDown(KeyCode.Space ) ){
     if( player.isPlaying){

         player.Stop(); 

          }else{

           player.Play();
           } 

      }

}

猜你喜欢

转载自blog.csdn.net/2301_79022588/article/details/134654315