System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种Unity下基于音频生成闪电效果的方法、系统及存储介质技术方案_技高网

一种Unity下基于音频生成闪电效果的方法、系统及存储介质技术方案

技术编号:40830770 阅读:4 留言:0更新日期:2024-04-01 14:53
一种Unity下基于音频生成闪电效果的方法、系统及存储介质,包括获取一段闪电效果的音频数据;根据预设采样频率与采样阈值,对音频数据进行采样并转换为闪电效果的曲线信息;将曲线信息对应的初始的配置数据进行调整,以得到至少一种不同闪电效果的新曲线信息以及对应的配置数据并进行存储;在脚本的帧更新中监听当前场景下的天气是否为雨天,若是,则随机调用至少任一新曲线信息的配置数据,生成新的闪电效果。本发明专利技术通过将曲线信息对应的初始的配置数据进行调整,以得到至少一种不同闪电效果的新曲线信息以及对应的配置数据并进行存储,后续直接调用对应的配置数据就能实现不同的闪电效果,不仅操作简便,而且后续的维护成本和开发成本低。

【技术实现步骤摘要】

本专利技术涉及计算机,特别是一种unity下基于音频生成闪电效果的方法、系统及存储介质。


技术介绍

1、unity是实时3d互动内容创作和运营平台。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助unity将创意变成现实。unity平台提供一整套完善的软件解决方案,可用于创作、运营和变现任何实时互动的2d和3d内容。

2、目前,在unity下的3d战斗场景制作中,为了增加战斗的表现体验,通常需要在战斗场景中加入天气表现(例如闪电效果)。虽然unity中存在天气系统插件,其允许用户创建所需的环境效果,但是需要用户先学习天气系统插件的使用方法,再一步步进行尝试,导致用户需要耗费较多的时间和精力去生成闪电效果。

3、因此,现有技术中unity下的闪电效果生成方法存在操作不够简便的问题。


技术实现思路

1、本专利技术的主要目的在于提供了一种unity下基于音频生成闪电效果的方法、系统及存储介质,旨在解决现有的unity下闪电效果生成方法操作不够简便的技术问题。

2、为实现上述目的,本专利技术提供了一种unity下基于音频生成闪电效果的方法,其包括以下步骤:获取一段闪电效果的音频数据;根据预设采样频率与采样阈值,对音频数据进行采样并转换为闪电效果的曲线信息;将曲线信息对应的初始的配置数据进行调整,以得到至少一种不同闪电效果的新曲线信息以及对应的配置数据并进行存储;配置数据至少包括:场景和角色灯光颜色、场景和角色灯光强度、对应的音频、持续时间以及曲线索引;在脚本的帧更新中监听当前场景下的天气是否为雨天,若是,则随机调用至少任一新曲线信息的配置数据,生成新的闪电效果。

3、可选的,预设采样频率为400-1000hz,预设采样阈值为0.002-0.01hz。

4、可选的,根据预设采样频率与采样阈值,对音频数据进行采样并转换为闪电效果的曲线信息,至少包括以下步骤:构造一个长度为n的音频数据数组,其中,n=d*c,d为音频采样数据,c为音频声道;调用unity中的audioclip.getdata函数将音频信息填充至音频数据数组中;根据音频采样数据、音频声道与预设采样频率,计算采样次数f;其中,f为预设采样频率;根据预设循环范围与预设递增步长,对音频数据进行循环采样,每次循环中,根据当前循环值z与采样次数f,得到曲线信息的key,根据当前循环值z与预设采样频率,得到曲线信息的value;根据曲线信息的key与value得到每次循环采样对应的曲线值;其中,value=z*f;对需要记录的曲线值进行归一化,并记录归一化后对应的曲线值。

5、可选的,对需要记录的曲线值进行归一化前,还包括以下步骤:根据第一预设公式计算绝对值,第一预设公式具体为:绝对值=|当前循环采样对应的曲线值–上一次循环采样对应的曲线值|;根据预设采样阈值,判断曲线值是否需要进行记录,若绝对值大于预设采样阈值,则曲线值需要进行记录,若绝对值小于或等于预设采样阈值,则曲线值不需要进行记录。

6、可选的,预设循环范围为[0,f],预设递增步长为1。

7、可选的,配置数据中,场景和角色灯光颜色以及场景和角色灯光强度均为闪电效果最强时的表现值,即场景和角色灯光颜色最大值以及场景和角色灯光强度最大值;曲线索引具体为:相同场景下,不同的闪电效果对应的曲线信息在同一数组中的索引。

8、可选的,生成新的闪电效果时,记录闪电效果的运行时间;根据运行时间与持续时间,对曲线信息进行采样,得到当前时间的光照强度值;根据第二预设公式计算第一灯光强度值,以及根据第三预设公式计算第一灯光颜色值,第二预设公式具体为:第一灯光强度值=调整后的场景和角色灯光强度*当前时间的光照强度值,第三预设公式具体为:第一灯光颜色值=调整后的场景和角色灯光颜色*当前时间的光照强度值;根据第一灯光强度值、调整后的角色灯光强度最大值、第一灯光颜色值和调整后场景和角色灯光颜色最大值,对灯光进行变化,生成新的闪电效果。

9、可选的,当闪电效果的运行时间大于或等于持续时间时,闪电效果结束。

10、与所述unity下基于音频生成闪电效果的方法相对应的,本专利技术提供一种unity下基于音频生成闪电效果的系统,其包括:音频数据获取模块,用于获取一段闪电效果的音频数据;转换模块,用于根据预设采样频率与采样阈值,对音频数据进行采样并转换为闪电效果的曲线信息;存储模块,用于将曲线信息对应的初始的配置数据进行调整,以得到至少一种不同闪电效果的新曲线信息以及对应的配置数据并进行存储;配置数据至少包括:场景和角色灯光颜色、场景和角色灯光强度、对应的音频、持续时间以及曲线索引;监听模块,用于在脚本的帧更新中监听当前场景下的天气是否为雨天,若是,则随机调用至少任一新曲线信息的配置数据,生成新的闪电效果。

11、此外,为实现上述目的,本专利技术还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有unity下基于音频生成闪电效果的程序,所述unity下基于音频生成闪电效果的程序被处理器执行时实现如上文所述的unity下基于音频生成闪电效果的方法的步骤。

12、本专利技术的有益效果是:

13、(1)与现有技术相比,本专利技术通过对音频数据进行采样并转换为闪电效果的曲线信息,使得曲线能够更好地表现音频的特征,将转换后得到的曲线信息应用在闪电效果上,可以使得闪电效果贴合音频整体表现,更加逼真;并且,通过将曲线信息对应的初始的配置数据进行调整,以得到至少一种不同闪电效果的新曲线信息以及对应的配置数据并进行存储,后续直接调用对应的配置数据,就能实现不同的闪电效果,若需要实现更多不同的闪电效果,用户只需要对配置数据进行调整,不仅操作简便,而且降低了后续的维护成本和开发成本;

14、(2)与现有技术相比,本专利技术通过根据预设采样阈值,判断曲线值是否需要进行记录,能够减少关键帧;

15、(3)与现有技术相比,本专利技术通过根据第一灯光强度值、调整后的角色灯光强度最大值、第一灯光颜色值和调整后场景和角色灯光颜色最大值,对灯光进行变化,生成新的闪电效果,使得unity下的闪电效果生成方法操作更加简便,效率更高。

本文档来自技高网...

【技术保护点】

1.一种Unity下基于音频生成闪电效果的方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的Unity下基于音频生成闪电效果的方法,其特征在于:预设采样频率为400-1000Hz,预设采样阈值为0.002-0.01Hz。

3.根据权利要求1所述的Unity下基于音频生成闪电效果的方法,其特征在于:根据预设采样频率与采样阈值,对音频数据进行采样并转换为闪电效果的曲线信息,至少包括以下步骤:

4.根据权利要求3所述的Unity下基于音频生成闪电效果的方法,其特征在于:对需要记录的曲线值进行归一化前,还包括以下步骤:

5.根据权利要求3所述的Unity下基于音频生成闪电效果的方法,其特征在于:预设循环范围为[0,F],预设递增步长为1。

6.根据权利要求1所述的Unity下基于音频生成闪电效果的方法,其特征在于:配置数据中,场景和角色灯光颜色以及场景和角色灯光强度均为闪电效果最强时的表现值,即场景和角色灯光颜色最大值以及场景和角色灯光强度最大值;

7.根据权利要求6所述的Unity下基于音频生成闪电效果的方法,其特征在于:生成新的闪电效果时,记录闪电效果的运行时间;

8.根据权利要求7所述的Unity下基于音频生成闪电效果的方法,其特征在于:当闪电效果的运行时间大于或等于持续时间时,闪电效果结束。

9.一种Unity下基于音频生成闪电效果的系统,其特征在于,包括:

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有Unity下基于音频生成闪电效果的程序,所述Unity下基于音频生成闪电效果的程序被处理器执行时实现如权利要求1至8任一项所述的Unity下基于音频生成闪电效果的方法的步骤。

...

【技术特征摘要】

1.一种unity下基于音频生成闪电效果的方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的unity下基于音频生成闪电效果的方法,其特征在于:预设采样频率为400-1000hz,预设采样阈值为0.002-0.01hz。

3.根据权利要求1所述的unity下基于音频生成闪电效果的方法,其特征在于:根据预设采样频率与采样阈值,对音频数据进行采样并转换为闪电效果的曲线信息,至少包括以下步骤:

4.根据权利要求3所述的unity下基于音频生成闪电效果的方法,其特征在于:对需要记录的曲线值进行归一化前,还包括以下步骤:

5.根据权利要求3所述的unity下基于音频生成闪电效果的方法,其特征在于:预设循环范围为[0,f],预设递增步长为1。

6.根据权利要求1所述的unity下基于音频生成闪电效果的方法...

【专利技术属性】
技术研发人员:邱鹏
申请(专利权)人:厦门极致互动网络技术股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1