掌桥专利:专业的专利平台
掌桥专利
首页

游戏中的音乐播放方法、装置及电子设备

文献发布时间:2024-04-18 20:00:50


游戏中的音乐播放方法、装置及电子设备

技术领域

本申请涉及计算机技术领域,具体涉及一种游戏中的音乐播放方法、装置、电子设备及计算机可读存储介质。

背景技术

音乐是虚拟游戏中创造良好游戏体验的重要要素,游戏中的音乐通常包括叙事音乐与非叙事音乐,叙事音乐是指虚拟角色的发声、乐器发声、物体碰撞发声等游戏场景中虚拟物体实际发出的声音,非叙事声音是指背景音乐、旁白等在后期制作中添加的声音,非叙事音乐用于营造游戏氛围。

相关技术在游戏中添加音乐时,通常是在到达了非叙事音乐的播放时机时播放非叙事音乐,例如,游戏开场时播放开场背景音乐,到达旁白说话时机(例如到达游戏的第二个环节)时播放旁白,到达了叙事音乐的播放时机时播放叙事音乐,例如,乐器被玩家触发时播放乐器发出的音乐,虚拟角色对应的玩家触发了演唱技能时或者虚拟角色到达预设位置时播放虚拟角色对应的歌曲等。

然而,相关技术这种叙事音乐与非叙事音乐各自播放的方式容易导致游戏音乐播放不流畅,例如,叙事音乐与非叙事音乐同时播放时造成游戏音乐混乱,叙事音乐与非叙事音乐进行切换时造成切换割裂不连续,影响了用户的游戏体验。

发明内容

本申请提供了一种游戏中的音乐播放方法、装置、电子设备及计算机可读存储介质,能够使得游戏中不同的音乐播放的音乐性更流畅,从而提高了用户的游戏体验。具体方式如下。

第一方面,本申请实施例提供了一种游戏中的音乐播放方法,所述方法包括:

在虚拟游戏中播放第一音乐,并确定所述第一音乐的节拍间隔;

获取所述虚拟游戏中待播放的第二音乐;

以所述第二音乐相对于所述第一音乐卡拍播放为原则,基于所述节拍间隔确定所述第二音乐相对于所述第一音乐的播放时机;

根据所述播放时机在所述虚拟游戏中播放所述第二音乐。

第二方面,本申请实施例还提供了一种游戏中的音乐播放装置,所述装置包括:

第一播放单元,用于在虚拟游戏中播放第一音乐,并确定所述第一音乐的节拍间隔;

获取单元,用于获取所述虚拟游戏中待播放的第二音乐;

确定单元,用于以所述第二音乐相对于所述第一音乐卡拍播放为原则,基于所述节拍间隔确定所述第二音乐相对于所述第一音乐的播放时机;

第二播放单元,用于根据所述播放时机在所述虚拟游戏中播放所述第二音乐。

第三方面,本申请实施例还提供了一种电子设备,包括:

处理器;以及

存储器,用于存储数据处理程序,该电子设备通电并通过所述处理器运行该程序后,执行如第一方面、第二方面或第三方面任一项所述的方法。

第四方面,本申请实施例还提供了一种计算机可读存储介质,存储有数据处理程序,该程序被处理器运行,执行如第一方面任一项所述的方法。

与现有技术相比,本申请具有以下优点:

本申请实施例提供的游戏中的音乐播放方法在虚拟游戏中播放第一音乐,并确定了第一音乐的节拍间隔以及获取了虚拟游戏中待播放的第二音乐,并以第二音乐相对于第一音乐卡拍播放为原则,基于第一音乐的节拍间隔确定了第二音乐相对于第一音乐的播放时机,根据所确定的播放时机在虚拟游戏中播放第二音乐,由于所确定的播放时机以第二音乐相对于第一音乐卡拍为原则,所以,根据播放时机播放第二音乐时,第二音乐能够与正在播放的第一音乐实现卡拍,使得第二音乐与第一音乐进行同时播放或进行切换的音乐性更加流场,提高了用户的游戏体验。

附图说明

图1是本申请实施例提供的游戏中的音乐播放方法的一例流程图;

图2是本申请实施例中的第一音乐的一例音乐节拍示意图;

图3是本申请实施例中进行回调设置的操作界面示意图;

图4是本申请实施例提供的游戏中的音乐播放装置的一例的结构图;

图5是本申请实施例提供的电子设备的逻辑结构示意图。

具体实施方式

在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。

游戏音乐是创造良好游戏体验的关键要素,游戏当中的音乐设计能够充分展现开发者对于音乐重要性的深刻理解。游戏中的音乐通常包括叙事音乐与非叙事音乐,叙事音乐是指虚拟角色的发声、乐器发声、物体碰撞发声等游戏场景中虚拟物体实际发出的声音,非叙事声音是指背景音乐、旁白、开场音乐等在后期制作中添加的声音,非叙事音乐用于营造游戏氛围。

相关技术在游戏中添加音乐时,通常是在到达了非叙事音乐的播放时机时播放非叙事音乐,例如,游戏开场时播放开场背景音乐,到达旁白播放时机(例如到达游戏的第二个环节)时播放旁白,到达了叙事音乐的播放时机时播放叙事音乐,例如,乐器被玩家触发时播放乐器发出的音乐,虚拟角色对应的玩家触发了演唱技能时或者虚拟角色到达预设位置时播放虚拟角色对应的歌曲等。

然而,相关技术这种叙事音乐与非叙事音乐各自播放的方式容易导致游戏音乐播放不流畅,例如,叙事音乐与非叙事音乐同时播放时造成游戏音乐混乱,叙事音乐与非叙事音乐进行切换时造成切换割裂不连续,影响了用户的游戏体验。

为使得游戏中不同音乐播放的音乐性更流畅,从而提高用户的游戏体验,本申请第一实施例提供了一种游戏中的音乐播放方法。本申请提供的方案的执行主体可以为电子设备,该电子设备可以是台式电脑、笔记本电脑、服务器、移动设备、智能手表、游戏机、智能电视、平板电脑等,也可以是其他具有游戏运行能力的设备。

如图1所示,本申请第一实施例提供的游戏中的音乐播放方法包括以下步骤S110~步骤S140。

步骤S110:在虚拟游戏中播放第一音乐,并确定第一音乐的节拍间隔。

上述虚拟游戏可以为即时战略游戏、模拟游戏、跑酷游戏、卡牌类游戏、射击游戏等,也可以是其他任意需要在游戏中添加音乐的游戏,本申请不具体限定。

步骤S110即在虚拟游戏的运行过程中播放第一音乐。本申请实施例中,在步骤S110之前,还可以在图形用户界面上显示虚拟游戏对应的虚拟游戏场景,以使虚拟游戏在显示虚拟游戏场景的同时播放第一音乐。

上述第一音乐可以为背景音乐、旁白音乐、音效音乐等非叙事音乐,非叙事音乐可以理解为非虚拟游戏场景中的虚拟对象(包括虚拟角色、虚拟物品、虚拟宠物等)发出的声音。第一音乐也可以为玩家虚拟角色发出的唱歌声、虚拟乐器发出的演奏声等叙事音乐,例如,第一音乐为玩家虚拟角色的唱歌声、虚拟收音机发出的歌声等,本申请不具体限定。

在虚拟游戏中播放第一音乐时,可以根据第一音乐的类型确定第一音乐的播放时机,第一音乐的播放时机可以预先设置。例如,当第一音乐为开场背景音乐时,可以在游戏到达开局时间时或者游戏完成加载而显示开局画面时播放第一音乐;当第一音乐为关卡通过后的音效音乐,可以在玩家完成关卡时播放第一音乐,其中,音效音乐为非叙事音乐;当第一音乐为虚拟角色发出的唱歌声时,可以在玩家触发了对虚拟角色的唱歌指令后播放第一音乐;当第一音乐为虚拟收音机发出的歌声时,可以在接收到玩家触发的对虚拟收音机的音乐播放指令时播放第一音乐。第一音乐的类型不同和功能等不同,播放第一音乐的时机也不同,本领域不具体限定。

本申请实施例中,第一音乐包括音乐节奏、音乐节拍、音速、音调等音乐属性,但不限于此。第一音乐在创作完成后,其对应的音乐属性也随之产生,本申请实施例中,第一音乐预先设置有对应的音乐属性,电子设备可以根据第一音乐对应的音乐属性确定第一音乐的节拍间隔。

可选地,步骤S110中,可以按以下步骤确定第一音乐的节拍间隔:获取第一音乐对应的音速信息,根据上述音速信息确定第一音乐的节拍间隔,音速信息用于指示第一音乐在单位时间的节拍数。

由于一首音乐的总长度通常是分钟数量级的,因此,上述音速信息具体可以为第一音乐对应的每分钟节拍数(Beat PerMinute,简称BPM),例如,第一音乐对应的BPM为120,则第一音乐的节拍间隔为0.5秒,即500毫秒,也就是说,第一音乐每隔500毫秒有一个节拍,第一音乐相邻两个节拍之间的时间间隔为500毫秒。通过音速信息可以快速、简便地确定出第一音乐的节拍间隔。

步骤S120:获取虚拟游戏中待播放的第二音乐。

上述第二音乐可以为可以为背景音乐、旁白音乐、音效音乐等非叙事音乐,第二音乐也可以为玩家虚拟角色发出的唱歌声、虚拟乐器发出的演奏声、拟声发声等叙事音乐。具体示例可以参考对第一音乐的解释,此处不再详举。

上述第二音乐可以为与第一音乐不同的音乐。第二音乐可以与第一音乐类型相同,例如,第一音乐与第二音乐均是叙事音乐或者均是非叙事音乐,第二音乐也可以与第一音乐类型不同,例如,第一音乐为叙事音乐,第二音乐为非叙事音乐。

第二音乐可以为具有音乐节奏、音乐节拍、音速、音调等音乐属性的音乐;第二音乐也可以为一个敲击声、一段诵读等不具有音乐节奏等音乐属性的音乐,这种情况下,第二音乐也可以成为第二音频,本申请不具体限定。

在虚拟游戏运行过程中,通常会存在背景音乐的基础上叠加播放其他音乐的情况,例如,在背景音乐的基础上叠加播放鼓声、嚓声等节奏音,这种情况下,第一音乐可以为背景音乐、音效音乐等非叙事音乐,第二音乐可以为鼓声、嚓声等叙事音乐。当第二音乐为鼓声、嚓声等虚拟乐器发出的音乐时,第二音乐可以为单次触发虚拟乐器发出的单次瞬时的乐器发声,这种情况下,玩家触发一次虚拟乐器,发出一声乐器声,以更加逼真的模拟玩家真实演奏乐器的场景。或者,第二音乐也可以为连续的乐器发声,这种情况下,玩家触发一次虚拟乐器,乐器则可以持续发出乐器声,减少了玩家的操作程序。具体如何设置可以根据实际需求,本申请不具体限定。

本申请实施例中,可以根据游戏的具体音乐实际情况确定第一音乐与第二音乐的具体内容,此处不具体限定。

本申请实施例中,预先设置了虚拟游戏对应的第一音乐与第二音乐,步骤S120中,可以获取虚拟游戏中预先设置的第二音乐。具体的,可以在到达第二音乐对应的预设播放时间时获取第二音乐,或者在检测到针对第二音乐的播放指令时获取第二音乐,也可以在游戏开局时即获取第二音乐。本申请不限定第二音乐的具体获取时机,第二音乐的获取时机不影响第二音乐的及时播放即可。

步骤S130:以第二音乐相对于第一音乐卡拍播放为原则,基于第一音乐的节拍间隔确定第二音乐相对于第一音乐的播放时机。

本申请实施例中,第二音乐相对于第一音乐卡拍播放,既可以是第二音乐卡在第一音乐的整节拍点上播放,也可以是第二音乐卡在第一音乐的分数节拍点上播放,分数节拍点例如是1/2节拍点、1/3节拍点、1/4节拍点等,也可以是其他分数节拍点。

具体的,第二音乐相对于第一音乐卡拍播放可以包括:第二音乐相对于第一音乐的播放时刻与第一音乐的整节拍点对应的时刻相同,或者第二音乐相对于第一音乐的播放时刻与第一音乐的相邻节拍点间的N等分时间间隔点(即分数节拍点)对应的时刻相同。N可以为大于或等于2的整数,例如,等分时间间隔点可以是2等分时间间隔点、3等分时间间隔点、4等分时间间隔点等,但不限于此。例如,第一音乐的BPM为120,则第一音乐的节拍间隔为500毫秒,第一音乐每隔500毫秒为一个整节拍点,第二音乐相对于第一音乐的播放时刻可以为第一音乐播放过程中的每隔500毫秒对应的时刻,或者,第二音乐相对于第一音乐的播放时刻也可以为第一音乐播放过程中的每隔250毫秒对应的时刻、每隔166.67毫秒对应的时刻、每隔125毫秒对应的时刻等。

例如,如图2所示,图2中奇数对应的节拍标识表示整节拍点,相邻两个整节拍点之间的1/2时间等分位置对应的节拍标识表示1/2节拍点。其他分数节拍点与1/2节拍点的划分方式相似,此处不再详举。

在一种实施方式中,上述步骤S130可以按以下步骤S131~步骤S132实现。

步骤S131:根据上述节拍间隔确定第一音乐的第一播放时刻。

上述第一播放时刻包括第一音乐的整节拍点对应的时刻和/或第一音乐的相邻整节拍点间的等分时间间隔点对应的时刻。即,第一播放时刻包括第一音乐的整节拍点对应的时刻,或者,第一播放时刻包括第一音乐的相邻整节拍点间的等分时间间隔点(即分数节拍点)对应的时刻,或者,第一播放时刻既包括第一音乐的整节拍点对应的时刻,又包括第一音乐的相邻整节拍点间的等分时间间隔点对应的时刻。

步骤S132:将上述第一播放时刻确定为第二音乐相对于所述第一音乐的播放时机。

上述相邻整节拍点间的等分时间间隔点即上文中的1/2节拍点、1/3节拍点、1/4节拍点等分数节拍点。

本实施例中,可以由设计人员预先设置第二音乐相对于第一音乐播放的触发时机类型,触发时机类型包括:第二音乐卡在第一音乐的整节拍点上播放、第二音乐卡在第一音乐的分数节拍点上播放。当触发时机类型为第二音乐卡在第一音乐的整节拍点上播放时,第一播放时刻包括第一音乐的整节拍点对应的时刻,当触发时机类型为第二音乐卡在第一音乐的分数节拍点上播放时,第一播放时刻包括第一音乐的分数节拍点对应的时刻。

在实际操作过程中,以通过Wwise音频引擎对游戏中的音乐播放进行设置为例,当第二音乐相对于第一音乐的播放时机为第一音乐的整节拍点对应的时刻时,可以通过Wwise中的Beat回调函数触发播放第二音乐的事件,其中,Beat回调函数用于在第一音乐的节拍点对应的时刻发送回调通知,例如,第一音乐的BPM为120,则Beat回调函数用于每隔500毫秒发送一次回调通知,电子设备会根据回调通知播放第二音乐;当第二音乐相对于第一音乐的播放时机为第一音乐的整节拍点对应的时刻以及第一音乐的分数节拍点对应的时刻时,可以通过Wwise中的Grid回调函数触发播放第二音乐的事件,其中,Grid回调函数用于在第一音乐的分数节拍点和整数节拍点对应的时刻发送回调通知,例如,第一音乐的BPM为120,用户在Grid回调函数中设置的等分参数为Triplet 8th(即将一节拍平均分为三份),则Grid回调函数用于每隔500/3=166.67毫秒发送一次回调通知,电子设备根据回调通知播放第二音乐。

例如,如图3所示,在Wwise引擎的音乐设置界面中,可以在第二音乐对应的音乐播放事件设置窗口(即Post Event窗口)设置第二音乐相对于第一音乐的播放时机,例如,用户可以在Post Event窗口中的回调设置控件(即Callback Mask控件)处设置回调通知相对于第一音乐的发送时机,从而根据用户设置的回调通知的发送时机确定出所使用的回调函数。具体的,用户可以在自定义事件(Custom Event)窗口中的回调函数类型设置控件和回调信息设置控件中进行回调函数自定义设置,后续也可以在其他设置窗口中进行回调信息的其他参数设置,此部分为针对Wwise引擎的用户选择并设置回调通知时机的具体操作的介绍,本领域技术人员可以根据实际需求不同、使用的音乐制作软件的不同进行具体操作,操作过程能够实现本申请的各个步骤即可,此处不再详述具体操作流程。

设计人员可以根据具体的游戏场景需求选择第一播放时刻的类型,例如,选择使用上述Beat函数还是选择上述Grid函数发送回调通知以通知第二音乐是否到了播放时机,也就是选择第二音乐是相对于第一音乐的整节拍点进行卡拍播放,还是相对于第一音乐的分数节拍点进行卡拍播放。

本实施方式中,由于第一音乐的第一播放时刻包括第一音乐的多个节拍点和/或多个分数节拍点,将第一音乐的各整节拍点或各分数节拍点确定为第二音乐相对于第一音乐的播放时机,使得第二音乐可以灵活地在第一音乐的各个整节拍点或分数节拍点的位置播放,使得第二音乐在相对于第一音乐卡拍播放的同时,还可以使得第二音乐播放更灵活。针对玩家触发的第二音乐,例如玩家虚拟角色的虚拟敲鼓操作触发的鼓声这一第二音乐、玩家虚拟角色的唱歌操作触发的歌声这一第二音乐,这种类型的第二音乐是玩家实时触发进行播放的,通过本实施方式可以对玩家实时触发的音乐进行及时、卡拍播放。

在另一种实施方式中,步骤S130还可以按以下步骤S133~步骤S134实现。

步骤S133:获取预先设定的第二音乐相对于第一音乐的预设插入时刻。

上述预设插入时刻为基于第一音乐的节拍间隔确定的第一音乐的卡拍播放时刻。

本实施方式中,设计人员可以基于实际需求并根据第一音乐的节拍间隔预先设定第二音乐相对于第一音乐在哪个卡拍时刻播放,这种情况下,电子设备可以获取设计人员预先设定的第二音乐相对于第一音乐的预设插入时刻。

步骤S134:将上述预设插入时刻确定为第二音乐相对于所述第一音乐的播放时机。

本实施方式适用于第二音乐为非玩家触发的音乐,例如,第二音乐为在第一音乐播放过程中的某个时刻加入旁白、加入说唱等。

在实际操作过程中,以通过Wwise音频引擎对游戏中的音乐播放进行设置为例,当将预设插入时刻确定为第二音乐相对于所述第一音乐的播放时机时,可以通过Wwise中的UserCue回调函数触发播放第二音乐的事件,其中,UserCue回调函数用于在第一音乐的用户设置的时间点发送回调通知,例如,在第一音乐的第50秒位置处发送回调通知,电子设备在接收到UserCue回调函数发送的回调通知后播放第二音乐。

本实施方式可以使得用户或者设计人员根据设计需要灵活设置第二音乐相对于第一音乐的播放时机,电子设备触发第二音乐按照所需时机播放会更简单方便。

步骤S140:根据上述播放时机在虚拟游戏中播放第二音乐。

本申请实施例可以理解为是在正在播放第一音乐的过程中,播放第二音乐,具体播放第二音乐时,可以是将第一音乐停止播放后播放第二音乐,也可以是第二音乐与第一音乐同时播放。后文将对如何播放第二音乐进行详细说明。

当上述播放时机为上述预设插入时刻时,可以在到达上述播放时机时播放第二音乐。

当上述播放时机为上述第一音乐的第一播放时刻时,若第二音乐只依赖于第一音乐的播放时机进行播放,而不依赖于其他条件,例如不依赖于用户触发而播放、不依赖于预先设置的播放时间,则可以在检测到到达第一音乐的第一播放时刻时播放第二音乐。例如,第一音乐的第一播放时刻为第一音乐的整节拍点,在可以在播放第一音乐的过程中在第一音乐的第一个整节拍点就开始播放第二音乐。

当上述播放时机为上述第一音乐的第一播放时刻时,若第二音乐除了依赖于第一音乐的播放时机进行播放,还依赖于用户触发第二音乐播放的操作、预先设置的第二音乐的初始播放时机等进行播放,例如,当用户触发了敲鼓动作时播放鼓声这个第二音乐,当用户触发了跳舞操作时播放舞蹈对应的伴奏这个第二音乐,当预先设置了在满足用户积分到达预设积分时播放第二音乐,这种情况下,在一种实施方式中,可以按以下步骤S141~步骤S143播放第二音乐。

步骤S141:确定第二音乐在虚拟游戏中的初始播放时刻。

上述初始播放时刻可以理解为是第二音乐在未与第一音乐卡拍播放时的播放时刻。

本申请实施例中,虚拟游戏可以通过图形用户界面显示虚拟游戏场景,虚拟游戏场景中可以包括第一虚拟对象,第一虚拟对象用于发出相对应的音乐,第二音乐为第一虚拟对象用于发出的音乐。

可选地,步骤S141中,可以响应于对第一虚拟对象的音乐播放指令,将该音乐播放指令的触发时间确定为第二音乐在虚拟游戏中的初始播放时刻。第一虚拟对象例如可以是虚拟游戏场景中的鼓、嚓、琴等虚拟乐器,也可以是虚拟放音机、虚拟手机等用于播放第二音乐的虚拟电子设备,但不限于此。音乐播放指令例如可以包括对第一虚拟对象的点击指令、对第一虚拟对象对应的音乐播放控件的选择指令、对第一虚拟对象进行选择后触发的音乐播放指令等,本申请不具体限定。

可选地,步骤S141中,也可以根据预先设定的第二音乐的初始播放时机确定初始播放时刻。例如,可以将用户触发跳舞操作(即第二音乐的初始播放时机)的时间确定为第二音乐(第二音乐即跳舞对应的伴奏)的初始播放时刻,或者可以将用户积分到达预设积分(即第二音乐的初始播放时机)时对应的时间确定为第二音乐(第二音乐即到达第二积分的提示音乐或者庆祝音乐)的初始播放时刻。

步骤S142:根据第二音乐相对于第一音乐的播放时机以及上述初始播放时刻,确定第二音乐在虚拟游戏中的第二播放时刻。

具体的,可以将第一音乐的各第一播放时刻中位于上述初始播放时刻之后的最近的第一播放时刻确定为第二音乐的第二播放时刻。例如,当上述初始播放时刻为上述音乐播放指令的触发时间时,本步骤即在接收到用户触发的音乐播放指令后,将第一音乐对应的各节拍点中离用户触发音乐播放指令的时刻最近的节拍点确定为第二播放时刻。这样,可以在用户触发了音乐播放指令后,及时与第一音乐进行卡拍播放,既可以对用户的音乐播放指令进行及时反馈,又可以使得第二音乐与第二音乐卡拍播放,提高了音乐播放的实时性与音乐的流场性,用户体验更好。

步骤S143:在上述第二播放时刻播放第二音乐。

本实施方式在播放第二音乐时,既考虑了第二音乐的初始播放时刻,又考虑了与第一音乐卡拍的播放时机,使得第二音乐的播放既能够满足游戏场景的初始设置,由能够与第一音乐卡拍而提高音乐的流畅性,用户听觉体验和整体游戏体验更好。

在另一种实施方式中,步骤S140还可以按以下步骤S144实现。

步骤S144:在检测到第一音乐播放到上述第一播放时刻时,若第二音乐对应的触发状态为被触发状态,则在第一播放时刻播放第二音乐。

步骤S144即在第一音乐的播放过程中,检测到第一音乐播放到整节拍点对应的时刻,或者检测到第一音乐播放到分数节拍点对应的时刻,若第二音乐对应的触发状态为被触发状态,则在第一播放时刻播放第二音乐。

相应的,上述游戏中的音乐播放方法还可以包括以下步骤S150~步骤S160。

步骤S150:响应于接收到对第二音乐的触发指令,将第二音乐对应的触发状态设置为被触发状态。

步骤S160:响应于第二音乐完成播放,将第二音乐对应的触发状态设置为未被触发状态。

对第二音乐的触发指令,可以是对用于发出第二音乐的第一虚拟对象的触发指令,例如对虚拟鼓的触发指令,对虚拟收音机的触发指令等,也可以是对游戏界面中显示的播放第二音乐的控件的触发指令,也可以是用户输入的播放第二音乐的快捷键的触发指令等,本申请不具体限定。

以第二音乐为鼓声为例,当接收到了对游戏场景中鼓的触发指令,可以将第二音乐对应的触发状态设置为被触发状态,此时,若检测到第一音乐播放到了第一播放时刻,则可以在该第一播放时刻播放一声鼓声(即第二音乐),播放完第二音乐后,将第二音乐的触发状态设置为未被触发状态,若用户在播放完第二音乐后一直未再针对鼓输入触发指令,则后续再到了第一音乐的第一播放时刻时,第二音乐对应的触发状态为未被触发状态,则不会在第一播放时刻播放第二音乐。

可以理解的是,步骤S144在第一播放时刻播放第二音乐时,是在第二音乐为未播放状态时在第一播放时刻播放第二音乐,即当前时刻第二音乐还没有被播放,当第二音乐为正播放且未播完的状态时,是不会在第一时刻播放第二音乐的。这种情况适用于第二音乐为持续时间比较长的音乐,例如,当第二音乐播放完后,才会再次触发对第二音乐的播放。

本实施方式以第一音乐播放过程中的各第一播放时刻为触发第二音乐是否播放的基准,可以理解为以第一音乐播放过程中的各第一播放时刻为时钟,触发第二音乐的播放,提高了音乐播放的及时性,对于鼓声、嚓声等用户虚拟演奏的第二音乐能够更及时响应用户的虚拟演奏,提高与用户的互动性,用户体验更好。

在一个具体实施例中,步骤S144中第二音乐对应的触发状态为被触发状态可以包括:第一虚拟对象对应的触发状态为被触发状态。也就是说,当第一虚拟对象对应的是被触发状态时,即表明第二音乐对应的是被触发状态。

步骤S150中对第二音乐的触发指令可以包括:对第一虚拟对象的触发指令。也就是说,当触发了对第一虚拟对象的触发指令时,即表明触发了对第二音乐的触发指令。

上述将第二音乐对应的触发状态设置为被触发状态包括:将第一虚拟对象对应的触发状态设置为被触发状态;上述将第二音乐对应的触发状态设置为未被触发状态包括:将第一虚拟对象对应的触发状态设置为未被触发状态。

具体的,可以通过设置第二音乐或第一虚拟对象对应的布尔值的方式设置第二音乐或第一虚拟对象对应的触发状态,例如,当第二音乐或第一虚拟对象对应的布尔值为False时,确定第二音乐或第一虚拟对象对应的触发状态为未触发状态,当第二音乐或第一虚拟对象对应的布尔值为True时,确定第二音乐或第一虚拟对象对应的触发状态为被触发状态。

本实施例中,由于第一虚拟对象为用于发出第二音乐的虚拟对象,因此,可以通过用户对第一虚拟对象的触发指令来表示用户对第二音乐的触发指令,使得用户仅对第一虚拟对象操作即可,用户操作更简单、直观和方便。

步骤S140中,具体可以根据上述播放时机以及预设的音乐叠加播放方式播放第二音乐。预设的音乐叠加方式用于指示第二音乐与第一音乐的叠加方式。例如,在播放第二音乐的过程中,可以不改变第一音乐的播放状态,使第一音乐与第二音乐同时播放,也可以根据实际场景设计第一音乐与第二音乐的播放状态,例如,可以在播放第二音乐的过程中减小第一音乐的播放音量,或者在播放第二音乐的过程中将第一音乐的声音逐渐减小为0,或者在第二音乐开始播放时停止播放第一音乐,或者将第二音乐与第一音乐通过预设音效叠加方式进行叠加播放等。本领域技术人员可以根据游戏场景的实际情况灵活设置第一音乐与第二音乐的叠加播放状态,本申请不具体限定。

本申请实施例提供的游戏中的音乐播放方法在虚拟游戏中播放第一音乐,并确定了第一音乐的节拍间隔以及获取了虚拟游戏中待播放的第二音乐,并以第二音乐相对于第一音乐卡拍播放为原则,基于第一音乐的节拍间隔确定了第二音乐相对于第一音乐的播放时机,根据所确定的播放时机在虚拟游戏中播放第二音乐,由于所确定的播放时机以第二音乐相对于第一音乐卡拍为原则,所以,根据播放时机播放第二音乐时,第二音乐能够与正在播放的第一音乐实现卡拍,使得第二音乐与第一音乐进行同时播放或进行切换的音乐性更加流场,提高了用户的游戏体验。

在一种实施方式中,上述虚拟游戏场景中还可以包括玩家虚拟角色,该玩家虚拟角色由玩家或者用户操控以进行游戏。步骤S140中,按以下步骤S145~步骤S147在虚拟游戏中播放所述第二音乐。

步骤S145:确定虚拟游戏场景中第一虚拟对象相对于玩家虚拟角色的位置信息。

在虚拟游戏场景中,各虚拟对象或者虚拟角色均对应有各自在虚拟游戏场景中的位置,具体的位置可以通过坐标的形式表示,也可以通过其他位置形式表示。本申请实施例中,可以根据第一虚拟对象对应的坐标与玩家虚拟角色对应的坐标确定第一虚拟对象相对于玩家虚拟角色的位置信息,在确定相对的位置信息时,可以将第一虚拟对象与玩家虚拟角色之间的位置差(例如坐标差)确定为第一虚拟对象相对于玩家虚拟角色的位置信息。

例如,第一虚拟对象相对于玩家虚拟角色的位置信息可以为(1,-2,0),表示第一虚拟对象位于玩家虚拟角色的右侧1米、后方2米的位置;第一虚拟对象相对于玩家虚拟角色的位置信息可以为(-2,1,3),表示第一虚拟对象位于玩家虚拟角色的左侧2米、前方1米、上方3米的位置。

步骤S146:根据上述位置信息确定第二音乐的发声位置。

第二音乐的发声位置也与第一虚拟对象相对于玩家虚拟角色的位置信息相对应。

步骤S147:根据第二音乐相对于所述第一音乐的播放时机以及上述发声位置,以立体声的形式在虚拟游戏中播放所述第二音乐。

其中,立体声能够通过模拟人耳接收声音的方式来创造声音的空间方位感,使人耳能够感知声音的方向,从而使得用户通过听第二音乐能够判断出第一虚拟对象相对于自己的方位,用户的游戏参与感、真实性更强,用户体验更佳。

本申请实施例中,可以通过空间音频编码(SpatialAudio Coding)、头相关传输函数(Head-Related Transfer Function,简称HRTF)、交叉耳廓差异(Inter-Aural TimeDifference,简称ITD)、交叉耳蜗差异(Inter-Aural Level Difference,简称ILD)、声音定位算法中的至少一种立体声处理算法,基于上述发声位置对第二音乐进行立体声处理,并播放经立体声处理后的第二音乐,以使玩家或用户能够从播放的立体声形式的第二音乐中判断声音的发声位置。本领域技术人员可以根据实际情况设置如何将第二音乐以立体声的形式播放,此处不再详述。

在实际操作中,以通过Wwise设置虚拟游戏中的游戏播放为例,可以将播放第二音乐的事件的触发节点(PostEvent节点)对应的对象参数(Actor参数)设置为第一虚拟对象,从而使得电子设备可以确定第二音乐为第一虚拟对象用于发出的音乐。

与本申请第一实施例提供的游戏中的音乐播放方法相对应的,本申请第二实施例还提供了一种游戏中的音乐播放装置,如图4所示,本实施例提供的游戏中的音乐播放装置包括:

第一播放单元410,用于在虚拟游戏中播放第一音乐,并确定所述第一音乐的节拍间隔;

获取单元420,用于获取所述虚拟游戏中待播放的第二音乐;

确定单元430,用于以所述第二音乐相对于所述第一音乐卡拍播放为原则,基于所述节拍间隔确定所述第二音乐相对于所述第一音乐的播放时机;

第二播放单元440,用于根据所述播放时机在所述虚拟游戏中播放所述第二音乐。

可选地,所述确定单元具体用于:

根据所述节拍间隔确定所述第一音乐的第一播放时刻,所述第一播放时刻包括所述第一音乐的整节拍点对应的时刻和/或所述第一音乐的相邻整节拍点间的等分时间间隔点对应的时刻;将所述第一播放时刻确定为所述第二音乐相对于所述第一音乐的播放时机。

可选地,所述确定单元具体用于:获取预先设定的所述第二音乐相对于所述第一音乐的预设插入时刻,所述预设插入时刻为基于所述节拍间隔确定的所述第一音乐的卡拍播放时刻;将所述预设插入时刻确定为所述第二音乐相对于所述第一音乐的播放时机。

可选地,所述虚拟游戏通过图形用户界面显示虚拟游戏场景,所述虚拟游戏场景中包括第一虚拟对象,所述第一虚拟对象用于发出相对应的音乐,所述第二音乐为所述第一虚拟对象用于发出的音乐。

可选地,所述第二播放单元具体用于:确定所述第二音乐在所述虚拟游戏中的初始播放时刻;根据所述播放时机以及所述初始播放时刻,确定所述第二音乐在所述虚拟游戏中的第二播放时刻;在所述第二播放时刻播放所述第二音乐。

可选地,所述第二播放单元具体用于:响应于对所述第一虚拟对象的音乐播放指令,将所述音乐播放指令的触发时间确定为所述第二音乐在所述虚拟游戏中的初始播放时刻;将所述第一音乐的各所述第一播放时刻中位于所述初始播放时刻之后的最近的第一播放时刻确定为所述第二音乐的第二播放时刻。

可选地,所述第二播放单元具体用于:在检测到所述第一音乐播放到所述第一播放时刻时,若所述第二音乐对应的触发状态为被触发状态,则在所述第一播放时刻播放所述第二音乐。

所述装置还包括:

状态设置单元,用于响应于接收到对所述第二音乐的触发指令,将所述第二音乐对应的触发状态设置为被触发状态;响应于所述第二音乐完成播放,将所述第二音乐对应的触发状态设置为未被触发状态。

可选地,所述第二音乐对应的触发状态为被触发状态包括:所述第一虚拟对象对应的触发状态为被触发状态;

所述对所述第二音乐的触发指令包括:对所述第一虚拟对象的触发指令;

所述将所述第二音乐对应的触发状态设置为被触发状态,包括:将所述第一虚拟对象对应的触发状态设置为被触发状态;

所述将所述第二音乐对应的触发状态设置为未被触发状态,包括:将所述第一虚拟对象对应的触发状态设置为未被触发状态。

可选地,所述虚拟游戏场景中还包括玩家虚拟角色;

所述第二播放单元具体用于:确定所述虚拟游戏场景中所述第一虚拟对象相对于所述玩家虚拟角色的位置信息;根据所述位置信息确定所述第二音乐的发声位置;根据所述播放时机以及所述发生位置,以立体声的形式在所述虚拟游戏中播放所述第二音乐。

可选地,所述第一播放单元具体用于:获取所述第一音乐对应的音速信息,所述音速信息用于指示所述第一音乐在单位时间的节拍数;根据所述音速信息确定所述第一音乐的节拍间隔。

可选地,所述第一音乐为所述虚拟游戏中的非叙事音乐,所述第二音乐为所述虚拟游戏中的叙事音乐。

与本申请第一实施例提供的游戏中的音乐播放方法相对应的,本申请第三实施例还提供了一种电子设备。如图5所示,所述电子设备包括:处理器501;以及存储器502,用于存储游戏中的音乐播放方法的程序,该电子设备通电并通过所述处理器运行该储游戏中的音乐播放方法的程序后,执行如下步骤:

在虚拟游戏中播放第一音乐,并确定所述第一音乐的节拍间隔;

获取所述虚拟游戏中待播放的第二音乐;

以所述第二音乐相对于所述第一音乐卡拍播放为原则,基于所述节拍间隔确定所述第二音乐相对于所述第一音乐的播放时机;

根据所述播放时机在所述虚拟游戏中播放所述第二音乐。

与本申请第一实施例提供的游戏中的音乐播放方法相对应的,本申请第四实施例提供一种计算机可读存储介质,存储有游戏中的音乐播放方法的程序,该程序被处理器运行,执行下述步骤:

在虚拟游戏中播放第一音乐,并确定所述第一音乐的节拍间隔;

获取所述虚拟游戏中待播放的第二音乐;

以所述第二音乐相对于所述第一音乐卡拍播放为原则,基于所述节拍间隔确定所述第二音乐相对于所述第一音乐的播放时机;

根据所述播放时机在所述虚拟游戏中播放所述第二音乐。

需要说明的是,对于本申请实施例提供的装置、电子设备及计算机可读存储介质的详细描述可以参考对本申请第一实施例中对方法的相关描述,这里不再赘述。

本申请虽然以较佳实施例公开如上,但其并不是用来限定本申请,任何本领域技术人员在不脱离本申请的精神和范围内,都可以做出可能的变动和修改,因此本申请的保护范围应当以本申请权利要求所界定的范围为准。

在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。内存是计算机可读介质的示例。

1、计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他属性的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储介质或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

2、本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请虽然以较佳实施例公开如上,但其并不是用来限定本申请,任何本领域技术人员在不脱离本申请的精神和范围内,都可以做出可能的变动和修改,因此本申请的保护范围应当以本申请权利要求所界定的范围为准。

技术分类

06120116540964