Uinty3D游戏开发技术之音频控制
2015-02-08 16:38
218 查看
欢迎来到unity学习、unity培训、unity企业培训教育专区,这里有很多U3D资源、U3D培训视频、U3D教程、U3D常见问题、U3D项目源码,我们致力于打造业内unity3d培训、学习第一品牌。
游戏音频的播放在任何游戏中都占据非常重要的地位,音频的播放还可以分为两种,一种为游戏音乐,另一种为游戏音效。前者适用于较长的音乐,如游戏背景音乐。第二种试用与比较短的游戏音乐,如开枪,打怪 时“砰砰”一瞬间播放的游戏音效。
Unity3D游戏引擎一共支持4个音乐格式的文件:
.AIFF 适用于较短的音乐文件可用作游戏打斗音效
.WAV 适用于较短的音乐文件可用作游戏打斗音效
.MP3 适用于较长的音乐文件可用作游戏背景音乐
.OGG 适用于较长的音乐文件可用作游戏背景音乐
1、在场景中创建一个空的游戏对象。
GameObject -> CreateEmpty 创建成功后我命名为audio。
给audio添加一个AudioSource属性,这个属性非常的重要,Unity播放音乐主要就是要靠这个东西。
Component -> Audio - > Audio Source。
2、找一个音乐文件,我这里使用了一个.mp3音乐文件,我命名为0.mp3 如下图所示将它拖动到右侧Audio Clip处,文章出处【狗刨学习网】。
我们发现 Audio Source 有很多设置的属性,其中较为重要的实行,一列在下面:
AudioClip :声音片段,还可以在代码中去动态的截取音乐文件。
Mute : 是否静音
Bypass Effects: 是否打开音频特效
Play On Awake: 开机自动播放
Loop:循环播放
Volume: 声音大小,取值范围0.0 到 1.0
Pitch:播放速度,取值范围在 -3 到 3 之间 设置1 为正常播放,小于1 为减慢播放 大于1为加速播放。
创建一个脚本我命名为audio.cs 用来音乐的播放。本章将实现3个按钮 点击实现 播放音乐、 停止音乐、 暂停音乐 ,与一个横向拖动条通过手指的拖动实现动态修改音乐声音。
audio.cs
1. using UnityEngine;
2. using System.Collections;
3.
4. public class audio : MonoBehaviour {
5.
6. //音乐文件
7. public AudioSource music;
8. //音量
9. public float musicVolume;
10.
11. void Start() {
12. //设置默认音量
13. musicVolume = 0.5F;
14. }
15. void OnGUI() {
16.
17. //播放音乐按钮
18. if (GUI.Button(new Rect(10, 10, 100, 50), "Play music")) {
19.
20. //没有播放中
21. if (!music.isPlaying){
22. //播放音乐
23. music.Play();
24. }
25.
26. }
27.
28. //关闭音乐按钮
29. if (GUI.Button(new Rect(10, 60, 100, 50), "Stop music")) {
30.
31. if (music.isPlaying){
32. //关闭音乐
33. music.Stop();
34. }
35. }
36. //暂停音乐
37. if (GUI.Button(new Rect(10, 110, 100, 50), "Pause music")) {
38. if (music.isPlaying){
39. //暂停音乐
40. //这里说一下音乐暂停以后
41. //点击播放音乐为继续播放
42. //而停止以后在点击播放音乐
43. //则为从新播放
44. //这就是暂停与停止的区别
45. music.Pause();
46. }
47. }
48.
49. //创建一个横向滑动条用于动态修改音乐音量
50. //第一个参数 滑动条范围
51. //第二个参数 初始滑块位置
52. //第三个参数 起点
53. //第四个参数 终点
54. musicVolume = GUI.HorizontalSlider (new Rect(160, 10, 100, 50), musicVolume, 0.0F, 1.0F);
55.
56. //将音量的百分比打印出来
57. GUI.Label(new Rect(160, 50, 300, 20), "Music Volueme is " + (int)(musicVolume * 100) + "%");
58.
59. if (music.isPlaying){
60. //音乐播放中设置音乐音量 取值范围 0.0F到 1.0
61. music.volume = musicVolume;
62. }
63. }
64. }
将audio.cs 绑定在摄像头上,将audio游戏对象拖动赋值给Music 这个AudioSource这个对象。这里强调一下AudioListenr ,它音频监听器,用来监听音乐文件的播放。这是一个重要的属性,一定要勾选,只有勾选后才可以进行音乐的播放。
build and run 运行我们这个游戏Demo,一切功能完美实现!!!
游戏音频的播放在任何游戏中都占据非常重要的地位,音频的播放还可以分为两种,一种为游戏音乐,另一种为游戏音效。前者适用于较长的音乐,如游戏背景音乐。第二种试用与比较短的游戏音乐,如开枪,打怪 时“砰砰”一瞬间播放的游戏音效。
Unity3D游戏引擎一共支持4个音乐格式的文件:
.AIFF 适用于较短的音乐文件可用作游戏打斗音效
.WAV 适用于较短的音乐文件可用作游戏打斗音效
.MP3 适用于较长的音乐文件可用作游戏背景音乐
.OGG 适用于较长的音乐文件可用作游戏背景音乐
1、在场景中创建一个空的游戏对象。
GameObject -> CreateEmpty 创建成功后我命名为audio。
给audio添加一个AudioSource属性,这个属性非常的重要,Unity播放音乐主要就是要靠这个东西。
Component -> Audio - > Audio Source。
2、找一个音乐文件,我这里使用了一个.mp3音乐文件,我命名为0.mp3 如下图所示将它拖动到右侧Audio Clip处,文章出处【狗刨学习网】。
我们发现 Audio Source 有很多设置的属性,其中较为重要的实行,一列在下面:
AudioClip :声音片段,还可以在代码中去动态的截取音乐文件。
Mute : 是否静音
Bypass Effects: 是否打开音频特效
Play On Awake: 开机自动播放
Loop:循环播放
Volume: 声音大小,取值范围0.0 到 1.0
Pitch:播放速度,取值范围在 -3 到 3 之间 设置1 为正常播放,小于1 为减慢播放 大于1为加速播放。
创建一个脚本我命名为audio.cs 用来音乐的播放。本章将实现3个按钮 点击实现 播放音乐、 停止音乐、 暂停音乐 ,与一个横向拖动条通过手指的拖动实现动态修改音乐声音。
audio.cs
1. using UnityEngine;
2. using System.Collections;
3.
4. public class audio : MonoBehaviour {
5.
6. //音乐文件
7. public AudioSource music;
8. //音量
9. public float musicVolume;
10.
11. void Start() {
12. //设置默认音量
13. musicVolume = 0.5F;
14. }
15. void OnGUI() {
16.
17. //播放音乐按钮
18. if (GUI.Button(new Rect(10, 10, 100, 50), "Play music")) {
19.
20. //没有播放中
21. if (!music.isPlaying){
22. //播放音乐
23. music.Play();
24. }
25.
26. }
27.
28. //关闭音乐按钮
29. if (GUI.Button(new Rect(10, 60, 100, 50), "Stop music")) {
30.
31. if (music.isPlaying){
32. //关闭音乐
33. music.Stop();
34. }
35. }
36. //暂停音乐
37. if (GUI.Button(new Rect(10, 110, 100, 50), "Pause music")) {
38. if (music.isPlaying){
39. //暂停音乐
40. //这里说一下音乐暂停以后
41. //点击播放音乐为继续播放
42. //而停止以后在点击播放音乐
43. //则为从新播放
44. //这就是暂停与停止的区别
45. music.Pause();
46. }
47. }
48.
49. //创建一个横向滑动条用于动态修改音乐音量
50. //第一个参数 滑动条范围
51. //第二个参数 初始滑块位置
52. //第三个参数 起点
53. //第四个参数 终点
54. musicVolume = GUI.HorizontalSlider (new Rect(160, 10, 100, 50), musicVolume, 0.0F, 1.0F);
55.
56. //将音量的百分比打印出来
57. GUI.Label(new Rect(160, 50, 300, 20), "Music Volueme is " + (int)(musicVolume * 100) + "%");
58.
59. if (music.isPlaying){
60. //音乐播放中设置音乐音量 取值范围 0.0F到 1.0
61. music.volume = musicVolume;
62. }
63. }
64. }
将audio.cs 绑定在摄像头上,将audio游戏对象拖动赋值给Music 这个AudioSource这个对象。这里强调一下AudioListenr ,它音频监听器,用来监听音乐文件的播放。这是一个重要的属性,一定要勾选,只有勾选后才可以进行音乐的播放。
build and run 运行我们这个游戏Demo,一切功能完美实现!!!
相关文章推荐
- android游戏开发如何进行音频控制
- android游戏开发中音频控制的经验
- 转贴-游戏中的现代音频技术综述
- J2EE平台架构上开发CRM的技术过程控制
- J2EE平台架构上开发CRM的技术过程控制
- 游戏中音频技术简述
- 游戏开发所用到的技术和工具
- 协作开发中的质量保证技术——并行版本控制、每日构建和交付工程
- Flash游戏开发技术分析(上)
- 协作开发中的质量保证技术——并行版本控制、每日构建和交付工程
- 一个比较全面游戏开发技术网站
- symbian 游戏开发中一些技术细节(摘录)
- 使用J2ME高级用户界面技术开发的猜数字游戏(包含源代码)
- 游戏开发技术系列丛书 献给游戏研发的专业人士
- J2EE平台架构上开发CRM的技术过程控制
- J2EE平台架构上开发CRM的技术过程控制
- 游戏引擎开发技术免费讲座
- 上周技术关注:知名游戏开发大师背后的牛人们
- [网络游戏网络底层开发]技术万岁,我们一起成长
- 使用J2ME技术开发《贪吃蛇》游戏(已在《软件报》发表,严禁转载)