<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 如何將一個(gè)開(kāi)源游戲移植給一款32位微控制器

如何將一個(gè)開(kāi)源游戲移植給一款32位微控制器

作者:Pierre Berquin,意法半導體公司工程師 時(shí)間:2009-05-26 來(lái)源:電子產(chǎn)品世界 收藏

  在此游戲中,圖像與源碼同等重要,因為它采用了大量貼圖和子畫(huà)面。這些都采用光線(xiàn)投射(Ray Casting)方法定位在屏幕上,從而給游戲以一種3D效果。光線(xiàn)投射包含了從一個(gè)POV(視點(diǎn))的投射半徑。并采用了一系列技巧以實(shí)現加速。例如,為了在像素點(diǎn)屏幕上投射一個(gè)半徑,要做一個(gè)空間搜索,以找到該半徑與最近墻上的交匯點(diǎn)。在Wolfenstein 3D中,墻面和貼圖的尺寸都是64 x 64像素(見(jiàn)圖3)。

本文引用地址:http://dyxdggzs.com/article/94728.htm

  雖然該游戲在當時(shí)取得了無(wú)比的成功,但它也有一些局限。其中之一是墻的高度全都一樣,它們全是90°,沒(méi)有斜角。這些限制減輕了移植的難度,因為它們代表著(zhù)源碼不太復雜。另一個(gè)限制是地面和天花板沒(méi)有貼圖。

  我會(huì )嘗試在一只較新的32位上給這款游戲以新的生命。一個(gè)必需的部件是建立一個(gè)控制游戲的應用電路板。從用戶(hù)角度只有兩個(gè)東西是可見(jiàn)的,一個(gè)240 x 320 TFT彩色屏幕,以及一組讓玩家在Wolfenstein 3D迷宮中穿越的按鍵。另外,用于屏幕和按鍵管理。由于這種類(lèi)型屏幕采用一種并行接口(16位寬),需要選擇一種能夠驅動(dòng)這種屏幕的。

  如何更順利地移植源碼?

  Wolfenstein 3D的源碼相當復雜。源碼越復雜,控制它就越難。因此,將這個(gè)應用移植到一個(gè)新的目標上非常困難。在開(kāi)始以前,重要的是了解用于編寫(xiě)原應用的語(yǔ)言是否為可移植的,而且該語(yǔ)言的的編譯器是否能用于新的目標。Wolfenstein 3D采用C語(yǔ)言編寫(xiě)。C語(yǔ)言有利于移植,因為它在微控制器領(lǐng)域廣泛可用,市場(chǎng)上現有很多編譯器與調試器。

  C語(yǔ)言允許一個(gè)源碼對多個(gè)目標,前提是它采用一種邏輯和清楚的方式編寫(xiě)。項目源文件的組織是一個(gè)考慮因素。圖4提出了一種方法。

單片機相關(guān)文章:單片機教程


單片機相關(guān)文章:單片機視頻教程


單片機相關(guān)文章:單片機工作原理




關(guān)鍵詞: ST 微控制器 開(kāi)源游戲

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>