Unity3D之Audio

大清早的头疼的不行不行的了,压根就没法好好上班啊啊啊啊啊,偷会闲

准备一个mp3文件,放在Resources目录下

1,Compoent/Create Empty 命名为Audio

2,选中Audio,Compoent/Audio/Audio Source

3,新建脚本Audio_TestDemo.cs

  

 1 public class Audio_TestDemo : MonoBehaviour
 2 {
 3
 4     public AudioSource audioClip;
 5     public GameObject player;
 6     // Use this for initialization
 7     void Start()
 8     {
 9         audioClip.priority = 0;
10         audioClip.clip = (AudioClip)Resources.Load("Audio_Demo/1", typeof(AudioClip)); ;
11         audioClip.Play();
12     }
13
14     // Update is called once per frame
15     void Update()
16     {
17         if (Input.GetKeyUp(KeyCode.A))
18         {
19             //静音和播放
20             audioClip.mute = !audioClip.mute;
21         }
22         if (Input.GetKey(KeyCode.LeftArrow))
23         {
24             //改变音调值,加速音频剪辑的播放
25             audioClip.pitch += 0.1f;
26         }
27         if (Input.GetKey(KeyCode.RightArrow))
28         {
29             //改变音调值,减速音频剪辑的播放
30             audioClip.pitch -= 0.1f;
31         }
32         if (Input.GetKey(KeyCode.UpArrow))
33         {
34             //音量增大
35             audioClip.volume += 0.1f;
36         }
37         if (Input.GetKey(KeyCode.DownArrow))
38         {
39             //音量减小
40             audioClip.volume -= 0.1f;
41         }
42         if (Vector3.Distance(player.transform.position, audioClip.transform.position) > audioClip.maxDistance)
43         {
44             //线性衰减,离声源越远声音越小,离声源越近声音越大
45             audioClip.rolloffMode = AudioRolloffMode.Linear;
46             //对数衰减,接近声源时音量大,当远离时音量下降明显
47             //audioClip.rolloffMode = AudioRolloffMode.Logarithmic;
48            // audioClip.rolloffMode = AudioRolloffMode.Custom;
49         }
50     }
51 }

然后将脚本的公共变量赋值就行了

运行音乐就播放啦啦啦

时间: 2024-08-24 21:04:58

Unity3D之Audio的相关文章

Unity3D Particle System + Audio Source = 音乐可视化

很简单的东西,上代码: using UnityEngine; using System.Collections; public class particle_ocean : MonoBehaviour { public ParticleSystem particleSystem; private ParticleSystem.Particle[] particlesArray; public int resolution = 256; public float spacing = 0.5f; p

Unity3D游戏开发初探

一.预备知识-对象的"生"与"死" (1)如何在游戏脚本程序中创建对象而不是一开始就创建好对象?->使用GameObject的静态方法:CreatePrimitive() 以上一篇的博文中的"指哪打哪"例子为基础,在AddForce脚本写入以下代码:   其中在CreateCube方法中,使用GameObject.CreatePrimitive方法来创建Cube类型的游戏对象实例,设置了它出现的坐标并为它增加刚体组件.这里可以看下AddCo

Unity3D脚本学习——运行时类

AssetBundle 类,继承自Object.AssetBundles让你通过WWW类流式加载额外的资源并在运行时实例化它们.AssetBundles通过BuildPipeline.BuildAssetBundle创建. 参见:WWW.assetBundle ,Loading Resources at Runtime ,BuildPipeline.BuildPlayer function Start () { var www = new WWW ("http://myserver/myBund

Unity3D Optimizing Graphics Performance for iOS

原地址:http://blog.sina.com.cn/s/blog_72b936d801013ptr.html icense Comparisons http://unity3d.com/unity/licenses#iphone Optimizing Graphics Performance http://unity3d.com/support/documentation/Manual/Optimizing Graphics Performance.html iOS A useful bac

Unity3d 从资源服务器下载资源(一)

项目里面的许多资源都是从资源服务器加载的,这样子可以减小客户端的包大小. 所以我们需要一个专门的类来管理下载资源. 资源分很多类型,如:json表,txt文件,image文件,二进制文件,UIAtlas图集,AssetBundle等. 所以,首先创建一个管理资源文件类型的类LoadFileType. 其中文件类型可以用枚举来表示,也可以用类成员常量来表示. 此处使用类成员常量: 1 using UnityEngine; 2 using System.Collections; 3 4 5 name

[Unity3D入门]分享一个自制的入门级游戏项目"坦克狙击手"

[Unity3D入门]分享一个自制的入门级游戏项目"坦克狙击手" 我在学Unity3D,TankSniper(坦克狙击手)这个项目是用来练手的.游戏玩法来自这里(http://www.4399.com/flash/127672_3.htm),虽然抄袭了人家的创意,不过我只用来练习(目前还很不成熟,离人家的境界相差很大),坦克.导弹.建筑模型来自网络,应该不会有版权问题吧. 由于模型和代码总共10M以上了,需要源代码和发布的Windows版.网页版程序的同学麻烦点个赞并留下你的邮箱~ 到

Unity3D用户手册

Welcome to Unity. 欢迎使用Unity. Unity is made to empower users to create the best interactive entertainment or multimedia experience that they can. This manual is designed to help you learn how to use Unity, from basic to advanced techniques. It can be

unity3d 射弹基础案例

小白本来想学cocos2dx的,然而c++难学就算了,cocos2dx对新手来说简直坑爹,于是乎转战unity3d学习js,在写出第一个游戏后兴致高多了哎. 回顾一下编辑的过程:1.建立一个cube作为地面,地面不具有rigibody刚体.2.建立cube方块,cube有default-material彩纸球属性,通过给彩纸球附彩纸给cube附图案,让cube具有rigibody可以停在cube地面上.3.camera相机,对于相机的位置和视野范围不是很理解,可以通过gameobject.ali

UNITY3D拓展编辑器 - InspectorEditor(属性编辑器)1

前文: 本章节会对InspectorEditor(属性编辑器)的创建方式进行叙述. 正文: 1.代码最终效果 2. 架构阐述 一个InspectorEditor(属性编辑器)产生直接对应着一个继承MonoBehaviour的脚本文件,脚本文件中定义着不同的属性以供InspectorEditor(属性编辑器)去实现.我们可以通过EditorGUILayout/GUILayout来实现InspectorEditor(属性编辑器)界面. 3. EditorGUILayout脚本分析 EditorGUI