] ( -)模擬客戶端通過其中的操作發(fā)送單元發(fā)送按鍵操作碼;按鍵操作碼包括四 個字節(jié),第一個字節(jié)用于存儲操作類型,第二個字節(jié)和第三個字節(jié)合在一起用于存儲按鍵 數(shù)值,第四個字節(jié)用于存儲按鍵狀態(tài);
[0031] (二)控制臺通過其中的操作接收單元接收操作發(fā)送單元發(fā)送的按鍵操作碼。
[0032] 進一步地,本發(fā)明利用移動設(shè)備模擬游戲控制器的游戲系統(tǒng)的運行方法,其中在 所述步驟五中,控制臺是通過其中的操作分配單元將按鍵操作碼對應(yīng)的操作分配到游戲視 圖的,所述分配采用游戲操作系統(tǒng)的應(yīng)用程序接口方式或操作系統(tǒng)內(nèi)核級的輸入方式。
[0033] 本發(fā)明利用移動設(shè)備模擬游戲控制器的游戲系統(tǒng)及其運行方法與傳統(tǒng)游戲系相 比具有以下優(yōu)點:本發(fā)明所述的系統(tǒng)通過模擬客戶端和控制臺搭建客戶端一服務(wù)器架構(gòu), 并使模擬客戶端和控制臺分別運行客戶端應(yīng)用程序和服務(wù)器應(yīng)用程序,使模擬客戶端具備 了實體游戲控制器的功能。具體地說就是,本發(fā)明所述系統(tǒng)將智能手機或平板電腦作為模 擬實體游戲控制器工作方式的模擬客戶端,將控制臺作為服務(wù)器,并使二者通過設(shè)備探測 單元和廣播響應(yīng)單元建立連接;通過模擬客戶端中的圖形用戶界面顯示單元模擬顯示實 體游戲控制器的界面,由模擬客戶端中的操作轉(zhuǎn)換單元通過注冊的觸摸監(jiān)聽器或重力傳感 器監(jiān)聽器捕獲來自圖形用戶界面的用戶觸屏操作信息或重力操作信息,并將操作信息轉(zhuǎn)換 成實體游戲控制器對應(yīng)的按鍵操作碼,然后通過模擬客戶端中的操作發(fā)送單元將按鍵操作 碼發(fā)送給控制臺中的操作接收單元,操作接收單元接收到按鍵操作碼后,由控制臺中的操 作分配單元將按鍵操作碼分配到游戲視圖,由此就使智能手機或平板電腦具備了實體游戲 控制器的功能,讓用戶通過智能手機或平板電腦就可操作在智通電視、電視盒上等設(shè)備中 運行的游戲,而不必購買實體游戲控制器,節(jié)省了成本,增強了游戲的適用性和應(yīng)用的普遍 性。本發(fā)明所述方法,在模擬客戶端與控制臺的連接過程中,通過設(shè)置驗證碼避免未經(jīng)授權(quán) 的連接,提高了安全性。本發(fā)明適用范圍廣,尤其適用于基于Linux內(nèi)核的游戲主機設(shè)備, 比如安卓系統(tǒng)的智能電視機和電視盒。
[0034] 下面結(jié)合附圖所示【具體實施方式】對本發(fā)明利用智能移動設(shè)備模擬游戲控制器的 系統(tǒng)及其運行方法作進一步詳細說明:
【附圖說明】
[0035] 圖1為本發(fā)明利用移動設(shè)備模擬游戲控制器的游戲系統(tǒng)的連接結(jié)構(gòu)示意圖;
[0036] 圖2為本發(fā)明利用移動設(shè)備模擬游戲控制器的游戲系統(tǒng)中,模擬客戶端和控制臺 所具備的功能單元示意圖;
[0037] 圖3為本發(fā)明利用移動設(shè)備模擬游戲控制器的游戲系統(tǒng)中,模擬客戶端中圖形用 戶界面顯示單元顯示的模擬實體游戲控制器的觸屏操作界面;
[0038] 圖4至圖8為本發(fā)明利用移動設(shè)備模擬游戲控制器的游戲系統(tǒng)中,模擬客戶端中 圖形用戶界面顯示單元顯示的模擬實體游戲控制器的重力操作界面。
【具體實施方式】
[0039] 首先需要說明的是,本發(fā)明即提供了利用移動設(shè)備模擬游戲控制器的游戲系統(tǒng), 又提供了該系統(tǒng)的運行方法。
[0040] 作為利用移動設(shè)備模擬游戲控制器的游戲系統(tǒng),如圖1和圖2所示,包括模擬客戶 端1、控制臺2和顯示裝置3。模擬客戶端1設(shè)有圖形用戶界面顯示單元101、設(shè)備探測單 元102、操作轉(zhuǎn)換單元103和操作發(fā)送單元104,圖形用戶界面顯示單元101用于顯示模擬 的游戲控制器操作界面,設(shè)備探測單元102用于探測控制臺2并與之建立連接,操作轉(zhuǎn)換單 元103用于將用戶的觸屏操作信息或重力操作信息轉(zhuǎn)換成游戲控制器對應(yīng)的按鍵操作碼, 操作分配單元104用于轉(zhuǎn)換后的按鍵操作碼發(fā)送給控制臺2。控制臺2設(shè)有廣播響應(yīng)單元 201、操作接收單元202和操作分配單元203,廣播響應(yīng)單元201用于響應(yīng)設(shè)備探測單元102 發(fā)送的廣播,操作接收單元202用于接收操作發(fā)送單元104發(fā)送的按鍵操作碼,操作分配單 元203用于將按鍵操作碼分配到游戲視圖。顯示裝置3用于顯示游戲視圖。
[0041] 需要說明的是,本發(fā)明所述的系統(tǒng)中,模擬客戶端1可以采用智能手機、平板電腦 或者其他類似移動設(shè)備。在模擬客戶端1和控制臺2之間組建了客戶端一服務(wù)器架構(gòu),模 擬客戶端1和控制臺2中分別預(yù)裝有客戶端應(yīng)用程序和服務(wù)器應(yīng)用程序,客戶端應(yīng)用程序 和服務(wù)器應(yīng)用程序雖不屬于本發(fā)明的保護客體,但對本領(lǐng)域的技術(shù)人員來說是已知的。所 述控制臺2和顯示裝置3是為描述方便所進行的區(qū)分,控制臺2用于運行游戲,顯示裝置3 用于顯示游戲運行視圖,在實際應(yīng)用中,控制臺2和顯示裝置3可以是組合在一起的整體設(shè) 備,如智能電視,也可以是分體的兩個設(shè)備,如電視和智能機頂盒、電視棒等。
[0042] 作為本發(fā)明利用移動設(shè)備模擬游戲控制器的游戲系統(tǒng)的運行方法,總體上包括以 下步驟:
[0043] 一、模擬客戶端1探測并獲取控制臺2的信息;
[0044] 二、建立模擬客戶端1與探測到的控制臺2之間的連接;
[0045] 三、模擬客戶端1捕獲來自圖形用戶界面的用戶觸屏操作信息或重力操作信息, 并將捕獲的用戶觸屏操作信息或重力操作信息轉(zhuǎn)換成實際游戲控制器對應(yīng)的按鍵操作 碼;
[0046] 四、模擬客戶端1將轉(zhuǎn)換后的按鍵操作碼發(fā)送給控制臺2 ;
[0047] 五、控制臺2根據(jù)接收到的按鍵操作碼將相應(yīng)的操作分配到游戲視圖。
[0048] 在上述步驟一中,模擬客戶端1探測并獲取控制臺2信息是通過局域網(wǎng)內(nèi)的 UDP (用戶數(shù)據(jù)報協(xié)議)廣播實現(xiàn)的,具體包括以下步驟,
[0049] (一)模擬客戶端1中的設(shè)備探測單元102通過局域網(wǎng)發(fā)送UDP數(shù)據(jù)包, m)P數(shù)據(jù)包中應(yīng)包含有預(yù)先定義的標記(如一個字節(jié)中的"1〇〇")、目標ip地址(如 "255.255.255.255")和預(yù)先確定的端口號(如"1001"),并對預(yù)先確定的端口(如UDP套 接口的"1002")進行監(jiān)聽,確定是否有響應(yīng)。
[0050] (二)控制臺2中的廣播響應(yīng)單元201對UDP套接口中預(yù)先確定的端口(如 "1001")進行監(jiān)聽,當接收到對應(yīng)的廣播后通過預(yù)先確定的端口(如"1002")向設(shè)備探測 單元102發(fā)送響應(yīng),響應(yīng)中應(yīng)包含控制臺2的名稱、ID和IP地址。
[0051] (三)模擬客戶端1中的設(shè)備探測單元102根據(jù)控制臺2中廣播響應(yīng)單元201發(fā) 送的響應(yīng),獲得探測到的控制臺2的名稱、ID和IP地址。
[0052] 通過以上方式,模擬客戶端1可以探測到周圍可被控制的所有控制臺2,并獲得包 括控制臺名稱、ID和對應(yīng)IP地址的目標清單。
[0053] 需要說明的是,模擬客戶端1探測并獲取控制臺1的信息的方法不限于上述方式, 還可以采用藍牙或者其它通訊技術(shù)實現(xiàn),例如,對于一個基于安卓操作系統(tǒng)的模擬客戶端, 可以使用藍牙適配器發(fā)現(xiàn)藍牙設(shè)備,而在控制臺2的一側(cè),只需將其設(shè)置成可見即可。
[0054] 在上述步驟二中,模擬客戶端1與探測到的控制臺2之間是采用TCP套接字連接 的,具體包括以下步驟,
[0055] ( -)模