AudiosurfやBeat Hazardなどのオーディオベースのゲームはどのように機能しますか?


43

注:これらのいずれかのクローンを作成する方法は尋ねていません。私は彼らがどのように機能するかについて尋ねています。

自分の音楽ファイル(または提供されたもの)を使用するゲームは誰もが見て、きっとゲームはそれらに基づいてAudiosurfBeat Hazardなどのレベルを生成します。

ここに、私が意味することを示すために、Audiosurfが実際に動いているビデオがあります。

ヘビーメタルの歌を提供すると、ビバルディのようなものとはまったく異なる障害物、敵、ゲーム体験が得られます。

私が興味を持っているのは、これらのゲームの仕組みです。オーディオ(データ側)についてはあまり知りませんが、曲が落ち着くときやスピードが上がるときを理解するために、どのように曲を処理しますか?レベルを形成するためにピッチ値(オーディオファイルにこれらの種類のものが存在すると仮定)を供給することができると思いますが、それは完全には説明しません。

私は説明、この種のことに関する記事へのリンクを探しています(用語があります)、またはこの種のことのオープンソース実装さえ探しています;-)

編集:いくつかの検索と少しの助けの後、私はFFT(高速フーリエ変換)について知りました。これは正しい方向への一歩かもしれませんが、私にとっては意味をなさないものです。または、波の物理学の知識と適合します。


1
私は、FFTの上のいくつかの情報を追加するのに役立ちます:)希望に編集
レイ・デイ

回答:


30

探している用語は信号処理/分析です多くのテクニックが関係していますが、それらのゲームが使用する基本的なテクニックはビート検出です。これは、曲のテンポと小節内のビートの位置を計算し、各ビートに一致するように障害物を適切な距離に配置しようとします。

ゲームが「キック」するタイミングなどを知る方法は、非常に単純で波形の振幅(ボリューム)を測定することから、特定の周波数のボリュームを分離してボリュームを測定するようなより複雑なものまであります。

興味がある場合は、デジタル信号処理を調べて、波形を分析する方法を確認してください。これは、これらのゲームが基本的に読み込み段階で実行していることです。

これらのリンクは、開始するのに役立ちます。


電子音楽のサウンド処理理論と技術の
紹介デジタルフィルターの紹介

それが役立つことを願っています:)

-レイ

編集:フーリエ変換に関するあなたの編集を見たばかりで、それについての洞察を追加すると思いましたが、決して専門家ではありません!

FFTは、波形の実際のフーリエ変換を計算する方法です。基本的に、オーディオファイルをAudacityにロードすると、タイムラインが上部にある波形が表示されます。これは時間領域と呼ばれます。FFTは、信号を時間領域から周波数領域(基本的にはオーディオ内で発生するすべての周波数)に変換します。

この変換は、スペクトル分析に役立ちます。ゲームの例では、フーリエ変換を行う場合、オーディオの高周波発生の量を簡単に計算でき、そこからきらめく視覚効果、星、または通常の高周波音に関連する何かを追加できます。低周波数では、低音に合わせて巨大で食いしん坊なモンスターを移動させることができます。


1
素晴らしいリンク!しかし、私はそれらをクリックして、私の目は少し溶けました。:p
共産主義者のダック

5
@The Communist Duck:それは弱点でした。今、あなたの目は強くなっています。
-doppelgreener

3
); @The共産党は、あなただけのウサギの穴の下、さらに強化しましたダックとそれがダウンlooooooong道を行く
レイ・デイの

私は、XNAがこれらのことをMP3ファイル(.WAVではできますが、それは巨大だと思います)で行うことを実際に許可していません。でもねえ、すばらしいリソースと頭痛に感謝します:D
共産主義のダック

1
リンク更新@Kay
レイ・デイ


0

スペクトルエネルギー変動の分析から得られるデータは、この種のマップを生成するのに十分です。ここで問題となるのは、処理するデータが多すぎる場合です。どのような種類のデータを使用するのではなく、どのように使用するかです。

いくつかのビデオを見た後、データが機能ドメイン(時間ドメイン->周波数ドメイン->機能ドメイン)でさらに移動されると信じ始めています。ソフトウェアは、スペクトルエネルギーの変化を使用してデータを生成し、既知のフィーチャを認識しようとします。次に、フィーチャに関する情報を使用してマップをセットアップします。認識は、クラスター化、最尤法、ニューラルネットワーク、遺伝的アルゴリズムなどによって実行できます。

認識が完了したら、次のようなinfomations持っている:どこで見た場合の機能、時間周波数は、どのようなタイプ featuatureのが発見され、速度は特徴ベクトルは、移動などさを。これらのデータを使用してマップ生成アルゴリズムを提供し、認識アルゴリズムの改善、より多くの機能ファミリの認識、より多くのデータの抽出、これらのデータを「レンダリング」する新しい方法の発見などの改善の余地を残します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.