【GameMaker】音乐可视化

音乐可视化是乐曲与图像的碰撞

在GameMaker中实现音乐可视化的最佳途径是使用扩展。

我制作了一个扩展:Awesome Audio Visualization​​​​​​

这个扩展可以读取音乐并输出绘制可视化所需的数据。

安装完扩展以后,代码所示如下:

// - Create 事件
// 播放音乐
Sound = audio_play_sound(example_music,0,1)
// 加载音乐
DataID = mv_load(@"example_music.ogg")

// - Draw 事件
// 获取音乐位置
var nowSeconds = audio_sound_get_track_position(Sound)
// 获取音乐总长度
var totalSeconds = audio_sound_length(Sound)
// 设置 FFT_SIZE
// 这个数值越小,数据变化的越快。
var fft_size = 2048

// 获取音频可视化数据
var Data = mv_get_data(DataID,nowSeconds,totalSeconds,fft_size*2)

// 绘制数据
for(var i = 0;i < 80;i++){
    var length = Data[int64(fft_size/81*i)] * 2 // 获取每一条线的长度
    draw_line_width(room_width/80 * i,0,room_width/80 * i,length,5)
}

 这个扩展支持你能想到的几乎所有格式:除了MP3。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值