專利名稱:依據(jù)音樂文件中所選定音軌的事件來進(jìn)行游戲的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種具多音軌的音樂文件,特別涉及一種依據(jù)音樂文件中所選定音軌的事件(event)來進(jìn)行游戲的方法。
背景技術(shù):
隨著電視游戲機(jī)的普及化,許多不同型態(tài)的游戲也陸續(xù)出籠。目前,最受歡迎的游戲之一就是跳舞游戲,其必須藉由玩家配合游戲中的不同事件同步地按壓輸入墊。此輸入墊可能是輸入腳踏墊,可供玩家用腳踏的方式輸入,或是一般的輸入控制器,供玩家用手輸入。除了跳舞游戲之外,亦有其它類型的音樂游戲利用相同的概念來進(jìn)行,亦即,配合游戲音樂中的不同事件,玩家實(shí)時(shí)反應(yīng)并且同步地配合音樂按壓輸入鍵。
請(qǐng)參閱圖1,圖1為已知依據(jù)歌曲中的事件20而進(jìn)行的游戲10所繪制的時(shí)間圖。一般,會(huì)在屏幕上方處顯示有四個(gè)方向箭頭12、14、16及18,且屏幕上的每一該方向箭頭12、14、16及18分別對(duì)應(yīng)于玩家輸入墊上的輸入鍵。如圖1所例示,共有七個(gè)事件20被顯示。時(shí)間圖中的縱軸代表時(shí)間,且每一事件從屏幕的最下方開始并逐漸往上移動(dòng)。當(dāng)事件20到達(dá)屏幕上方處四個(gè)方向箭頭12、14、16及18的位置時(shí),玩家應(yīng)實(shí)時(shí)按壓相對(duì)應(yīng)的輸入鍵,如此即可得分。每一事件20是依據(jù)游戲中所播放的歌曲中所設(shè)定的事件所產(chǎn)生,而每一首歌都有自己的事件設(shè)定。一般來說,事件對(duì)應(yīng)于某節(jié)拍樂器如鼓或主旋律樂器如吉他或鋼琴所產(chǎn)生的音符。由于每一首歌可能都會(huì)使用許多樂器,故可以用樂器數(shù)字界面(Musical Instrument Digital Interface,MIDI)文件來提供游戲中的歌曲。
請(qǐng)參閱圖2,圖2為已知MIDI文件30基本結(jié)構(gòu)示意圖。已知MIDI文件30由一連串的位數(shù)據(jù)所組成,并在圖2中各位數(shù)據(jù)以十六進(jìn)制形式說明。圖2中的MIDI文件30包括有一標(biāo)題文件32、一第一音軌36、一第二音軌38以及一第三音軌40。標(biāo)題文件32包括有一音軌數(shù)量標(biāo)志34,用以指示MIDI文件30內(nèi)的音軌總數(shù)。在該例示中,音軌數(shù)量標(biāo)志34所指為數(shù)字”3”,因?yàn)橛腥齻€(gè)音軌。每一音軌36、38及40可儲(chǔ)存不同樂器的音符,因此,圖2中的MIDI文件30即可以包含有三個(gè)不同樂器所演奏的音樂。
然而,玩家有時(shí)候會(huì)偏好由游戲中播放音樂的某種特定樂器來進(jìn)行游戲,但是已知依據(jù)音樂中的事件來進(jìn)行游戲的方式,玩家并不被允許可以自行選擇相對(duì)應(yīng)于某一特定樂器的音軌內(nèi)的事件來進(jìn)行游戲。舉例來說,玩家可能想要依據(jù)鋼琴演奏的音符來玩游戲,而已知的游戲機(jī)卻只能一直使用某相同樂器,例如鼓,的事件來進(jìn)行游戲。再者,每一游戲通常都僅附帶有數(shù)首歌曲,而無法增加新歌曲。因此,容易使玩家在游戲進(jìn)行過數(shù)次之后即感到厭煩而無新鮮感。
發(fā)明內(nèi)容
據(jù)此,本發(fā)明的主要目的即在于提供一種依據(jù)音樂文件中的事件來進(jìn)行游戲的方法,以解決上述問題。
為達(dá)上述目的,本發(fā)明較佳實(shí)施例揭露一種根據(jù)音樂文件中事件來進(jìn)行游戲的方法,包含有提供一第一使用者接口使一使用者可選擇一即將于游戲中播放的音樂文件,該經(jīng)選定的音樂文件包含有多個(gè)即將與該音樂文件同時(shí)播放的音軌;提供一第二使用者接口使該使用者可由該音樂文件的該多個(gè)音軌中擇一者;計(jì)算該選定的音軌內(nèi)伴隨音符事件的事件時(shí)間,各該音符事件是對(duì)應(yīng)于該選定音軌的一音符者;播放該選定的音樂文件;以及決定一輸入鍵是否已在該選定音軌的該音符事件前后某一預(yù)定時(shí)間內(nèi)被按壓。
本發(fā)明的一特點(diǎn)在于玩家可以選擇音樂文件中的不同音軌作為游戲中提供事件的來源。如此一來,可提供玩家更多選擇,使得游戲變得更有樂趣。
為了能更近一步了解本發(fā)明的特征及技術(shù)內(nèi)容,請(qǐng)參閱以下有關(guān)本發(fā)明的詳細(xì)說明與附圖。然而,該附圖僅供參考與輔助說明用,并非用來對(duì)本發(fā)明加以限制者。
圖1為已知依據(jù)歌曲中的事件而進(jìn)行的游戲所繪制的時(shí)間圖。
圖2為已知MIDI文件基本結(jié)構(gòu)示意圖。
圖3為圖2中的MIDI文件的第二音軌的詳細(xì)圖式圖4為第二音軌中每一事件的時(shí)間表。
圖5顯示圖4中所有音符播放事件的絕對(duì)時(shí)間的一個(gè)事件緩沖表。
圖6為根據(jù)本發(fā)明方法的游戲進(jìn)行流程圖。
圖7進(jìn)一步顯示依據(jù)本發(fā)明方法計(jì)算所選定音軌的音符播放事件(圖6中的步驟100)的流程圖。
附圖符號(hào)說明10 游戲12 方向箭頭14 方向箭頭16 方向箭頭18 方向箭頭20 事件30 MIDI文件32 標(biāo)題文件34 音軌數(shù)量標(biāo)志36 第一音軌38 第二音軌40 第三音軌50 標(biāo)題音軌52 時(shí)間間隔54 非音符事件56 音符事件90 開始92 選擇MIDI文件94 讀取MIDI并擷取音軌數(shù)量96 玩家選擇音軌100 計(jì)算選定音軌的音符播放事件150 開始進(jìn)行MIDI152 MIDI終點(diǎn)?154 進(jìn)行音符播放事件156 玩家是否按壓相關(guān)輸入鍵158 計(jì)分
160 計(jì)算最后分?jǐn)?shù)162 顯示最后分?jǐn)?shù)164 結(jié)束102 開始104 讀取選定的MIDI音軌106 MIDI音軌終點(diǎn)?108 讀取時(shí)間間隔110 讀取音軌事件112 計(jì)算事件的絕對(duì)時(shí)間114 是否為音符播放事件116 將事件置于事件緩沖表中118 結(jié)束具體實(shí)施方式
本發(fā)明能提供玩家在玩游戲時(shí)得到更多的彈性空間及變化,可允許玩家在游戲歌曲窗體中增加新歌,且可讓玩家選擇所要音樂文件中的特定音軌,并以此所選擇的音軌內(nèi)的事件來進(jìn)行游戲。
請(qǐng)參閱圖2,圖2中的MIDI文件30包括有一標(biāo)題文件32、一第一音軌36、一第二音軌38以及一第三音軌40。為方便說明如何由MIDI文件30選定單一的音軌,茲以第二音軌38為例做說明。請(qǐng)參閱圖3及圖4,圖3為圖2中的MIDI文件30的第二音軌38的詳細(xì)圖式,圖4為第二音軌38中每一事件的時(shí)間表。假設(shè)玩家要以第二音軌38所代表的樂器所演奏的音符作為游戲中的音樂事件。本發(fā)明首先對(duì)所選定的音軌中的音符播放(note-on)事件進(jìn)行分析,這些音符播放(note-on)事件代表歌曲中某些音符的開始。第二音軌38包括有一標(biāo)題音軌50、多個(gè)時(shí)間間隔(delta times)52、多個(gè)非音符(non-note)事件54,以及多個(gè)音符事件(note-events)56。時(shí)間間隔52是置于各個(gè)非音符(non-note)事件54以及音符事件(note-events)56之前,用以指示該事件發(fā)生前的經(jīng)過間隔時(shí)間。由于非音符事件54并不會(huì)在第二音軌38中有任何音符事件,因此在各個(gè)非音符事件54前的時(shí)間間隔52為”00”??捎胁煌臅r(shí)間間隔52以改變音符事件56所載的事件持續(xù)時(shí)間。
所有的非音符事件54以及音符事件56都顯示在圖4中的不同列。圖4中的五欄是分別顯示供例示參考的事件編號(hào)、時(shí)間間隔52值、事件的絕對(duì)時(shí)間、事件的位表示以及事件類型。時(shí)間間隔52值顯示前一個(gè)事件至目前事件所相間的時(shí)間。事件的絕對(duì)時(shí)間顯示一個(gè)事件的絕對(duì)時(shí)間,是將前面的時(shí)間間隔52值累計(jì)而得。圖4顯示三種不同的事件類型。非音符事件54不會(huì)影響聽得見的音符,音符播放事件54為新音符的啟始,而音符關(guān)閉事件為音符的結(jié)束。
為進(jìn)一步顯示圖4中的事件,茲扼要說明前六個(gè)事件。其中,前兩個(gè)事件為非音符事件,前面皆有一個(gè)十六進(jìn)制時(shí)間間隔”0x00”。
第三個(gè)事件是音符播放事件,其前面具有一時(shí)間間隔”0x00”。因此,在第三個(gè)事件開始時(shí)的絕對(duì)時(shí)間仍為”0x00”。對(duì)此事件的位表示為”90 3C 64”,其中”3C”字節(jié)表示音符的音調(diào)高低,而”64”字節(jié)表示音符的音量。
第四個(gè)事件為一音符關(guān)閉事件,其前面具有一時(shí)間間隔“0x78”。因此,在第四個(gè)事件開始時(shí)的絕對(duì)時(shí)間為”0x78”。對(duì)此事件的位表示為”90 3C 00”,其中前一音符的音量已經(jīng)被設(shè)定為”00”,也就是無聲。由于音符開始時(shí)的絕對(duì)時(shí)間是為”0x00”,而音符結(jié)束時(shí)的絕對(duì)時(shí)間為“0x78”,該音符的持續(xù)時(shí)間即為”0x78”。
第五個(gè)事件為一音符播放事件,其前面具有一時(shí)間間隔”0x00”。因此,在第五個(gè)事件開始時(shí)的絕對(duì)時(shí)間仍為”0x78”。實(shí)際上,第五個(gè)事件開始所播放的音符是與緊隨于前一停止音符的后的音符相同。
第六個(gè)事件為一音符關(guān)閉事件,其前面具有一時(shí)間間隔“0x78”。因此,在第六個(gè)事件開始時(shí)的絕對(duì)時(shí)間為”0xF0”,也就是“0x78”+“0x78”。第六個(gè)事件終結(jié)在第五事件中所啟始的事件。所以,總共有兩個(gè)音符播出,所播出的音符具有相同的音調(diào)大小與持續(xù)時(shí)間。這與前后連續(xù)播出兩個(gè)具有相同音調(diào)大小的四分之一音符(quarter notes)相類似。
當(dāng)依據(jù)音樂中的事件進(jìn)行游戲時(shí),玩家僅需考慮音符播放事件,來按壓相對(duì)應(yīng)的輸入鍵。請(qǐng)參閱圖5,圖5顯示圖4中所有音符播放事件的絕對(duì)時(shí)間的一個(gè)事件緩沖表。就在玩家選定了音樂文件中的某一音軌,選定的音軌會(huì)先被搜尋以找出音符播放事件與其相對(duì)應(yīng)的絕對(duì)時(shí)間。然后,這些數(shù)據(jù)會(huì)被存在事件緩沖表中供游戲使用。當(dāng)游戲開始進(jìn)行,音符播放事件將被由事件緩沖表中有順序地提出,而玩家將在每一音符播放事件發(fā)生的相同絕對(duì)時(shí)間時(shí)嘗試按壓相對(duì)應(yīng)的輸入鍵。
請(qǐng)參閱圖6,圖6為根據(jù)本發(fā)明方法的游戲進(jìn)行流程圖。流程圖中所顯示的步驟茲將分別說明如下。
步驟90開始;步驟92選擇一MIDI文件,其包括有一即將在游戲中播放的歌曲,其中,玩家可以從一歌曲清單中新增或者刪除MIDI文件,而MIDI文件可由玩家下載或自行創(chuàng)造;步驟94讀取所選定的MIDI文件,并讀取音軌數(shù)量;步驟96玩家從所得的所有音軌中選擇一即將于游戲中提供音符播放事件的音軌;步驟100針對(duì)所選定的音軌計(jì)算音符播放事件;步驟150以所選擇的MIDI文件作為游戲音樂開始進(jìn)行游戲;步驟152決定是否已到達(dá)MIDI文件的終點(diǎn),若是,跳至步驟160,若否,進(jìn)行步驟154;步驟154進(jìn)行音符緩沖表中的下一個(gè)音符播放事件;步驟156決定玩家是否已在音符播放事件前后某一預(yù)定時(shí)間內(nèi)按壓相關(guān)的輸入鍵,若是,進(jìn)行步驟158,若否,回到步驟152;步驟158響應(yīng)音符播放事件,當(dāng)玩家正確地按壓輸入鍵時(shí),將分?jǐn)?shù)加至玩家計(jì)分板中;回到步驟152;步驟160計(jì)算游戲最后的分?jǐn)?shù);步驟162顯示最后分?jǐn)?shù);以及步驟164游戲結(jié)束。
請(qǐng)參閱圖7,圖7進(jìn)一步顯示依據(jù)本發(fā)明方法計(jì)算所選定音軌的音符播放事件(圖6中的步驟100)的流程圖。流程圖中所顯示的步驟茲將分別說明如下。
步驟102開始;步驟104讀取所選定的MIDI音軌;步驟106決定是否已到達(dá)MIDI音軌的終點(diǎn),若是,跳至步驟118,若否,進(jìn)行步驟108;步驟108讀取下一個(gè)時(shí)間間隔;步驟110讀取下一個(gè)音軌事件;步驟112將所有先前的時(shí)間間隔相加,以計(jì)算出該事件的絕對(duì)時(shí)間;
步驟114決定該事件是否為一音符播放事件,若是,跳至步驟116,若否,進(jìn)行步驟106;步驟116將該音符播放事件置于事件緩沖表中,回到步驟106;以及步驟118結(jié)束。
相較于先前技術(shù),本發(fā)明方法允許玩家可選擇音樂文件中的某一音軌,其代表著某一樂器,玩家可利用所選音軌用來提供游戲中的音樂事件。此外,玩家可經(jīng)由下載或者自行創(chuàng)作的方式將歌曲新增至歌曲選單中,藉此使游戲具有更高的彈性與新鮮度。以上種種優(yōu)點(diǎn)均顯示本發(fā)明已完全符合專利法所規(guī)定的產(chǎn)業(yè)利用性、新穎性及進(jìn)步性等法定要件,爰依專利法提出申請(qǐng),敬請(qǐng)?jiān)敳椴①n準(zhǔn)本案專利。
以上所述僅為本發(fā)明的較佳實(shí)施例,凡依本發(fā)明申請(qǐng)專利范圍所做的均等變化與修飾,皆應(yīng)屬本發(fā)明專利的涵蓋范圍。
權(quán)利要求
1.一種根據(jù)音樂文件中事件來進(jìn)行游戲的方法,包含有下列步驟提供一第一使用者接口使一使用者可選擇一即將在游戲中播放的音樂文件,該經(jīng)選定的音樂文件包含有多個(gè)即將與該音樂文件同時(shí)播放的音軌;提供一第二使用者接口使該使用者可由該音樂文件的該多個(gè)音軌中擇一者;計(jì)算該選定的音軌內(nèi)伴隨音符事件的事件時(shí)間,各該音符事件是對(duì)應(yīng)于該選定音軌的一音符者;播放該選定的音樂文件;以及決定一輸入鍵是否已在該選定音軌的該音符事件前后某一預(yù)定時(shí)間內(nèi)被按壓。
2.如權(quán)利要求1所述的方法,其中,各該音符事件是一音符播放事件,其標(biāo)示出一相關(guān)音符的開始。
3.如權(quán)利要求1所述的方法,其中,各該音符事件的相對(duì)應(yīng)事件時(shí)間是以絕對(duì)時(shí)間計(jì)算者。
4.如權(quán)利要求3所述的方法,其中,在該選定的音軌內(nèi)的各該事件具有一相對(duì)應(yīng)的時(shí)間間隔,且各該音符事件的該絕對(duì)時(shí)間是將先前的事件的所有時(shí)間間隔加總而得。
5.如權(quán)利要求1所述的方法,其中,各該音符事件以及相對(duì)應(yīng)于各該音符事件的該事件時(shí)間是儲(chǔ)存在一事件緩沖表中。
6.如權(quán)利要求1所述的方法,其中,當(dāng)該輸入鍵在該選定音軌的該音符事件前后某一預(yù)定時(shí)間內(nèi)被按壓,即可獲得分?jǐn)?shù)。
7.如權(quán)利要求6所述的方法,其中,當(dāng)選定的音樂文件停止播放,游戲的總分即被計(jì)算。
8.如權(quán)利要求1所述的方法,其中,選擇一在游戲中播放的音樂文件的方法包含有使該使用者得以通過一音樂選單中選擇一音樂文件者。
9.如權(quán)利要求8所述的方法,其中,可由該音樂選單新增或刪除音樂文件者。
10.如權(quán)利要求8所述的方法,其中,在該音樂選單中新增音樂文件是可以下載方式完成。
11.如權(quán)利要求1所述的方法,其中,該音樂文件是為一樂器數(shù)字接口文件。
12.一種用以執(zhí)行如權(quán)利要求1所述方法的電子游戲裝置者。
全文摘要
本發(fā)明揭露一種根據(jù)音樂文件中事件來進(jìn)行游戲的方法,包含有提供一第一使用者接口使一使用者可選擇一即將于游戲中播放的音樂文件,該經(jīng)選定的音樂文件包含有多個(gè)即將與該音樂文件同時(shí)播放的音軌;提供一第二使用者接口使該使用者可由該音樂文件的該多個(gè)音軌中擇一者;計(jì)算該選定的音軌內(nèi)伴隨音符事件的事件時(shí)間,各該音符事件是對(duì)應(yīng)于該選定音軌的一音符者;播放該選定的音樂文件;以及決定一輸入鍵是否已在該選定音軌的該音符事件前后某一預(yù)定時(shí)間內(nèi)被按壓。
文檔編號(hào)G06F19/00GK1691043SQ200410042048
公開日2005年11月2日 申請(qǐng)日期2004年4月29日 優(yōu)先權(quán)日2004年4月29日
發(fā)明者鄭雯妮 申請(qǐng)人:明基電通股份有限公司