Koreographer音乐插件基本使用

 

Koreographer这个插件是一款可以控制音乐节奏的插件,反正我是第一想到了音乐游戏。因为本来就是想做音乐游戏找的插件,Unity音乐这有这方面的知识也是实在少,虽然看见SiKi老师出这个课了,但是真的买不起啊o(╥﹏╥)o。所以写个博客记录下,其实主要就是帮大家翻译下插件中文本里比较重要的东西。插件百度网盘在最后了。

主要步骤:

  1. 打开一个现有的Unity项目或者创建一个新的项目。
  2. 导入Koreographer包。
  3. 打开Koreographer编辑器。
  4. 创建一个Koreographer资源文件。
  5. 关联音乐。
  6. 创建一个​KoreographyTrack。
  7. 在KoreographyTrack中定义事件ID。
  8. 创建一个或者多个事件(​KoreographyEvents)。
  9. 创建一个新的脚本。
  10. 测试!

 

具体步骤:

前两个步骤就不说了,新建打开,包是可以从商店下的,当然如果你有钱~~


将​Koreographer资源包导入项目中后,点击编辑菜单Window,我们会发现多了两个选项,点击第一个打开Koreographer的编辑器。(如果没有的话,重新导一遍试试,我第一次就没有,不清楚原因)


呐,现在我们可以创建我们自己的一个Koreographer资源了,在点击出来的编辑页面中点击 New Koreography按钮创建


创建完之后就可以在Audio Clip中添加自己喜欢的音乐了~~


找到下图中的地方,点击New按钮创建我们的KoreographyTrack,他将包含我们事件的信息,然后填写我们的事件ID(Track Event ID),事件ID是侦听器脚本用于从其中注册事件的键


基本的都设置完成下面让我们来创建事件吧,在此之前,我们将配置结构,我们希望创建的事件。要配置事件类型和负载类型,请查看波形上方屏幕的右侧。

Event Types

  • OneOff:当生成事件时会即刻生成一个事件。
  • Span:当生成事件时,会生成一段时间的事件,如果一直按着会一直延续,如果OneOff是一条线,那么Span就是一个长方体。

Payload

先看看官方的吧:

● No Payload:This event is essentially a non-descript message; a trigger.
● Color:This event carries a Colorvalue within it that can be retrieved by event subscribers.
● Curve:Same as the Color except that it carries an AnimationCurve object.
● Float: Same as the Color except that it carries a number.
● Gradient:Same as the Color except that it carries a Gradient object.
● Int:Same as the Color except that it carries a whole number.
● Text:Same as the Color except that it carries text.

第一条无所谓就是什么都没有,很平常的一个事件。为什么放英文出来呢,一会你们就知道了。

第二条的意思是这个事件包含了一个颜色,可以用来检索

第三条,跟第二条类似,除了带有一个AnimationCurve对象

第四条,跟第二条类似,除了带有一个number对象

第五条,跟第二条类似。。。。。。

看了之后根本不知道咋用啊喂!!!!能不能走点心!!!

总之就是多了个功能可以给事件分个类,方便你去调用了。


之后我们来播放音乐啦~!

点击播放按钮播放你喜欢的音乐哦~

在音乐运行的时候按E,Return或者回车键(说实话我一直没找到Return键在哪,按遍了键盘唉。。。)在你觉得应该狠狠敲打的地方按下,创建事件!


然后激动人心的时候到了,在你的Hierarchy中创建一个新物体(命名随便我就不管了)

添加​KoreographerSimple MusicPlayer组件,将我们第四步创建的文件添加到Simple MusicPlayerKoreography属性中。(Simple MusicPlayer组件会附带一个组件Audio Source,我们将他的Play On Awake取消勾选)


脚本控制:

创建一个空物体,添加上新创建的脚本:

public class EventSubscriber : MonoBehaviour {
	public string eventID;//事件ID,之前设置的那个ID
	// Use this for initialization
	void Start () {
		Koreographer.Instance.RegisterForEvents(eventID, FireEventDebugLog);
	}
	
	// Update is called once per frame
	void Update () {
		
	}

	void FireEventDebugLog(KoreographyEvent koreoEvent)
	{
		GameObject go = Resources.Load<GameObject>("Cube");
		Instantiate(go);
	}
}

 

OK!完成,之后就会有好多小方块出来啦~~

 

 

 

插件百度网盘:https://pan.baidu.com/s/1DL-d0Pi8RDLwTxZ4StpmwQ 密码:h0p0

评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值