• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于Untiy3D的《烏龜速遞》游戲程序開(kāi)發(fā)

    2015-05-30 10:48:04姚子杰
    藝術(shù)科技 2015年8期
    關(guān)鍵詞:程序開(kāi)發(fā)手機(jī)游戲

    姚子杰

    摘 要:本文主要講解手機(jī)游戲的設(shè)計(jì)與實(shí)現(xiàn),對(duì)游戲引擎交互技術(shù)應(yīng)用進(jìn)行專(zhuān)題研究,以界面交互腳本實(shí)現(xiàn)、角色控制腳本實(shí)現(xiàn)、賽道隨機(jī)腳本實(shí)現(xiàn)等四個(gè)部分,詳細(xì)介紹了運(yùn)用Unity3D引擎實(shí)現(xiàn)游戲開(kāi)發(fā)的研究過(guò)程。

    關(guān)鍵詞:游戲開(kāi)發(fā);手機(jī)游戲;程序開(kāi)發(fā)

    1 Unity3D游戲引擎

    Unity3D是由Unity Technologies公司開(kāi)發(fā)的一款專(zhuān)業(yè)游戲引擎。軟件成本較低,非常適合小團(tuán)隊(duì)及初創(chuàng)公司使用。Unity3D引擎可以運(yùn)行在Windows和Mac OS X系統(tǒng)下,可輕松發(fā)布游戲及項(xiàng)目至Windows、Mac、Wii、iPhone和Android平臺(tái)。

    2 《烏龜速遞》游戲界面實(shí)現(xiàn)的要點(diǎn)分析

    用戶(hù)須通過(guò)人機(jī)交互動(dòng)作來(lái)參與游戲。要完成人機(jī)交互,在人和計(jì)算機(jī)之間必須有一個(gè)有效的接口,這個(gè)接口既要向人反饋信息也要向游戲設(shè)備傳遞指令,這就是游戲的圖形用戶(hù)界面。

    2.1 基于Unity3D實(shí)現(xiàn)游戲界面的交互功能

    本節(jié)將以《烏龜速遞》游戲主界面為例,全面介紹在Unity3D引擎平臺(tái)中,如何實(shí)現(xiàn)界面交互功能的。

    將主界面中的各個(gè)元素單獨(dú)存儲(chǔ)成PNG格式圖像,如按鈕“新的游戲”,就需要將文字層、按鈕層分開(kāi)保存,而按鈕層又分成了兩個(gè):一個(gè)是默認(rèn)顯示狀態(tài);另一個(gè)是點(diǎn)擊選中狀態(tài)。這樣分層的存儲(chǔ)更方便程序直接調(diào)用,并且是帶有透明層的文件,不會(huì)擋住下一層內(nèi)容顯。

    (1)主界面項(xiàng)目在Unity3D中創(chuàng)建:Unity3D的默認(rèn)控件提供了一個(gè)預(yù)先制作的、簡(jiǎn)單的藍(lán)色模版作為皮膚,但是,并不一定我們制作的每一款游戲都能使用它。所以在這次的項(xiàng)目中我們使用了GUI Texture來(lái)進(jìn)行界面的制作。GUI Texture是顯示在二維的平面圖像。他們特別適用于用戶(hù)界面元素、按鈕和裝飾。它們的定位和縮放只通過(guò)改變X和Y軸來(lái)完成。

    (2)創(chuàng)建主界面:打開(kāi)Untiy3D軟件主界面在菜單中選擇GameObject→Crearte Other→GUI Texture。并將創(chuàng)建出來(lái)的GUI Texture改名為bg,讓我們可以在后面更方便找到它。當(dāng)創(chuàng)建完GUI Texture之后,把我們的之前制作完成的背景圖放置在GUI Texture組件中的Texture參數(shù)中,并將它的wedth和height兩個(gè)參數(shù)修改為1467和587。接著在Transform組件中將Position的Z軸坐標(biāo)改為-3,這樣背景圖就會(huì)設(shè)置在最底層,便于界面上的按鈕、文字和游戲標(biāo)志可以放置在背景圖的上方。按同樣的方法將其他的按鈕和游戲標(biāo)志放置在界面上,分別將“新的游戲”、“排行榜”、“設(shè)置選項(xiàng)”和“退出游戲”等按鈕命名為“button_Start”、“button_top10”、“button_option”和“button_quit”,方便后期的識(shí)別。在Project面板上創(chuàng)建按鈕及背景等相對(duì)應(yīng)的prefabs,并將每一個(gè)GUI Texture分別拖拽到相對(duì)應(yīng)的prefabs中,然后保存即可。

    2.2 按鈕實(shí)現(xiàn)交互功能

    “新的游戲”按鈕在已建立的界面的功能按鈕上增加該功能。在界面完成的基礎(chǔ)上實(shí)現(xiàn)該按鈕的功能。

    首先需要判斷手指是否觸碰該按鈕,然后這時(shí)候就需要用到腳本語(yǔ)言的Update()函數(shù),因?yàn)閁pdate()函數(shù)是在腳本執(zhí)行的過(guò)程中反復(fù)調(diào)用,我們可以通過(guò)它來(lái)檢測(cè)手指是否觸碰該按鈕。當(dāng)手指觸碰到按鈕的時(shí)候就會(huì)執(zhí)行changeScene()函數(shù),切換到下一個(gè)界面。腳本編寫(xiě)完成之后,將腳本拖拽到Hierarchy面板上的“button_Start”按鈕上。

    當(dāng)“新的游戲”按鈕完成觸碰檢測(cè)功能之后,開(kāi)始編寫(xiě)替換圖片功能的代碼。首先創(chuàng)建一個(gè)Texture2D的公共變量,名稱(chēng)為beginGame_p,把圖片拖拽到參數(shù)中。然后當(dāng)按鈕被點(diǎn)擊之后,我們需要把貼圖替換為beginGame_p,需要在changeScene()函數(shù)里面添加guiTexture.texture = beginGame_p;這一串代碼,整個(gè)按鈕效果實(shí)現(xiàn),其他幾個(gè)按鈕做法相同。

    3 隨機(jī)賽道腳本實(shí)現(xiàn)的要點(diǎn)分析

    3.1 分段賽道設(shè)置

    在游戲策劃的時(shí)候,就設(shè)定了每一個(gè)關(guān)卡由多個(gè)賽道組構(gòu)成,隨機(jī)賽道的好處,一是讓玩家每一次進(jìn)入游戲都有新鮮感,不會(huì)產(chǎn)生賽道的重復(fù)性。二是增加游戲難度,讓玩家不容易記住賽道的行駛路徑,不會(huì)輕松地通過(guò),增加賽道的可玩性。

    3.2 隨機(jī)賽道程序?qū)崿F(xiàn)

    第一,我們需要設(shè)置賽道的四個(gè)坐標(biāo)點(diǎn)的位置。雖然賽道的模型文件是隨機(jī)的,但是我們?cè)诔绦蛑屑s束了每一個(gè)段賽道的長(zhǎng)度,那么在更換模型的時(shí)候,賽道的坐標(biāo)點(diǎn)是不會(huì)改變的。

    第二,通過(guò)獲取游戲進(jìn)度得到玩家當(dāng)前游戲的難度,并保存在stageNum變量中。代碼如下:

    第三,根據(jù)Random()隨機(jī)函數(shù)所取值得到賽道數(shù)組,代碼如下:

    第四,不論賽道如何隨機(jī),整條賽道的開(kāi)頭和結(jié)尾是保持不變的,所以我們把這個(gè)隨機(jī)的C#腳本保存在“kaiTou”賽道中,功能得以實(shí)現(xiàn)。

    4 小結(jié)

    本文對(duì)基于Untiy3D的《烏龜速遞》游戲程序要點(diǎn)分析。探討了程序?qū)崿F(xiàn)的方法,并研究了能夠?qū)崿F(xiàn)的主要效果。游戲的模塊復(fù)雜多樣,需要不同的技術(shù)人員分工可以完成。具體在本章中對(duì)游戲的主界面布局、按鈕點(diǎn)擊反饋及按鈕替換圖形做了一個(gè)要點(diǎn)分析。針對(duì)由本游戲一個(gè)亮點(diǎn)的隨機(jī)賽道也進(jìn)行了程序分析。

    猜你喜歡
    程序開(kāi)發(fā)手機(jī)游戲
    淺析大學(xué)生在兼職小程序開(kāi)發(fā)中遇到的問(wèn)題
    APP應(yīng)用程序開(kāi)發(fā)模式探究
    電子制作(2019年19期)2019-11-23 08:42:02
    陜西省大學(xué)生手機(jī)游戲迷戀度實(shí)證分析
    基于TestStand的自動(dòng)檢測(cè)程序開(kāi)發(fā)
    讓手機(jī)游戲成為傳統(tǒng)文化的傳播新渠道
    手機(jī)游戲?qū)Υ髮W(xué)生的負(fù)面影響及對(duì)策分析
    基于嵌入式系統(tǒng)Windows CE的應(yīng)用程序開(kāi)發(fā)
    基于App inventor 2手機(jī)程序開(kāi)發(fā)過(guò)程的學(xué)習(xí)與實(shí)——以“喵喵定時(shí)器”APP開(kāi)發(fā)為例
    電子制作(2017年1期)2017-05-17 03:54:08
    基于ANSYS的大體積混凝土溫度應(yīng)力計(jì)算程序開(kāi)發(fā)研究
    在干什么
    房山区| 玉门市| 辽源市| 临夏县| 陇川县| 崇明县| 东山县| 平塘县| 延边| 合江县| 东山县| 米林县| 资阳市| 寿阳县| 横山县| 洛浦县| 抚州市| 汶上县| 南部县| 巴林右旗| 唐河县| 乌拉特前旗| 十堰市| 航空| 根河市| 酒泉市| 上栗县| 双柏县| 花莲市| 新民市| 开化县| 河津市| 唐海县| 资兴市| 永年县| 青神县| 秦皇岛市| 太和县| 南召县| 台中县| 睢宁县|