新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于ARM和WinSock的多人對(duì)戰(zhàn)游戲平臺(tái)設(shè)計(jì)

基于ARM和WinSock的多人對(duì)戰(zhàn)游戲平臺(tái)設(shè)計(jì)

作者: 時(shí)間:2011-07-15 來(lái)源:網(wǎng)絡(luò) 收藏

摘要:具有多機(jī)互聯(lián)對(duì)戰(zhàn)功能的開放式便攜機(jī)具有廣闊的應(yīng)用價(jià)值和深遠(yuǎn)的發(fā)展空間。以SAMSUNG公司920T的處理器S3C2410為核心,嵌入WinCE 5.0操作系統(tǒng),在VS2008開發(fā)環(huán)境下創(chuàng)建智能設(shè)備MFC工程,并將在Win32環(huán)境下開發(fā)的單人/雙人五子棋進(jìn)行代碼移植,最終在開發(fā)板上成功運(yùn)行。游戲開發(fā)Windows Sockets網(wǎng)絡(luò)鳊程,能夠?qū)崿F(xiàn)板與PC、ARM板與ARM板之間的游戲?qū)?zhàn),可利用以太網(wǎng)接口互聯(lián),也可以通過(guò)無(wú)線局域網(wǎng)互聯(lián)。該文以五子棋游戲?yàn)槔?,詳述了硬件?gòu)建、游戲開發(fā)及移植的整個(gè)過(guò)程,極具借鑒價(jià)值。
關(guān)鍵詞:ARM處理器;WinCE5.0操作系統(tǒng);網(wǎng)絡(luò)鳊程;代碼移植

游戲不僅能開發(fā)人的智力,使人頭腦反應(yīng)靈敏,還能滿足人的精神需求(如冒險(xiǎn)、創(chuàng)造力、情感等),極具娛樂(lè)性和趣味性,深受人們的喜愛(ài)。隨著消費(fèi)類電子產(chǎn)業(yè)的蓬勃發(fā)展,越來(lái)越多的嵌入式電子產(chǎn)品走進(jìn)了千家萬(wàn)戶,催生出了諸如GBA(Game Boy Advance)、PSP(Play-Station Portabk)以及最近才在我國(guó)上市的iPad等一大批專業(yè)的并且銷量驚人的明星級(jí)移動(dòng)娛樂(lè)游戲設(shè)備。
然而上述游戲通常造價(jià)昂貴,且不具有開放性。例如備受推崇的PSP,開發(fā)授權(quán)問(wèn)題和昂貴的專用開發(fā)套件(軟硬件)使得PSP游戲的開發(fā)門檻很高。這在很大程度上限制了這些游戲的普及。如果利用通用的處理器和常用的嵌入式操作系統(tǒng)(如WinCE、Linux等)構(gòu)建一種以太網(wǎng)或者無(wú)線以太網(wǎng)的便攜式的游戲機(jī)。則可以吸引大量熟悉C/C++嵌入式編程的工程師或發(fā)燒友制作出各種精彩的游戲,這必將極大地推動(dòng)這種游戲的普及。而且將平臺(tái)進(jìn)行功能裁剪和批量生產(chǎn)后成本較低,對(duì)于中低收入人群來(lái)說(shuō)將是極佳選擇,市場(chǎng)潛力無(wú)窮。
本文詳述了這種游戲平臺(tái)的硬件構(gòu)建、互聯(lián)對(duì)戰(zhàn)游戲開發(fā)框架和流程,以及從Win32到WinCE進(jìn)行代碼移植的整個(gè)開發(fā)過(guò)程,并記錄了開發(fā)過(guò)程中積累的經(jīng)驗(yàn),具有很高的借鑒價(jià)值。

1 硬件平臺(tái)
硬件平臺(tái)架構(gòu)如圖1所示。

本文引用地址:http://butianyuan.cn/article/150469.htm

a.JPG


S3C2410是Samsung公司推出的16/32位RISC處理器,為手持設(shè)備和一般類型應(yīng)用提供了低價(jià)格、低功耗、高性能小型微控制器的解決方案。
S3C2410采用了ARM920T內(nèi)核,0.18μm工藝的CMOS標(biāo)準(zhǔn)宏單元和存儲(chǔ)器單元。它的低功耗、精簡(jiǎn)和出色的全靜態(tài)特別適用于對(duì)低成本和功耗敏感的應(yīng)用。ARM920T實(shí)現(xiàn)了MMU,AMBA BUS和Harvard高速緩沖體系結(jié)構(gòu)。這一結(jié)構(gòu)具有獨(dú)立的16 kB的指令Cache和16 kB數(shù)據(jù)Cache,每個(gè)都由8字長(zhǎng)的行構(gòu)成。

2 套接字編程
2.1 基礎(chǔ)
是Windows Sockets的縮寫,是Windows環(huán)境下廣泛應(yīng)用的、開放的、支持多種協(xié)議的網(wǎng)絡(luò)編程接口規(guī)范。這里主要使用TCP/IP協(xié)議族實(shí)現(xiàn)通信。
基于TCP/IP的套接字有流式套接字(SOCK_STREAM)、數(shù)據(jù)報(bào)式套接字(SOCK_DGRAM)、原始式套接字(SOCK_RAW)3種類型,如圖2所示。

b.JPG


TCP協(xié)議是面向連接的網(wǎng)絡(luò)協(xié)議,它的連接步驟較多,而且當(dāng)檢測(cè)到數(shù)據(jù)包丟失或錯(cuò)誤時(shí),會(huì)要求發(fā)送端重新發(fā)送,這樣一來(lái)就不可避免地引起了傳輸延時(shí)。
UDP協(xié)議面向無(wú)連接服務(wù),每個(gè)分組都攜帶有完整的目的地址,操作簡(jiǎn)單,且無(wú)傳輸延遲,比較適合要求不高的游戲通信。它的通信時(shí)序如圖3所示。

c.JPG


上一頁(yè) 1 2 3 4 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉