亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于U n i t y 3 d拼圖游戲的設(shè)計(jì)與實(shí)現(xiàn)

        2017-09-03 10:57:36中南民族大學(xué)計(jì)算機(jī)科學(xué)學(xué)院
        電子世界 2017年16期
        關(guān)鍵詞:腳本引擎分辨率

        中南民族大學(xué)計(jì)算機(jī)科學(xué)學(xué)院 黃 俊

        基于U n i t y 3 d拼圖游戲的設(shè)計(jì)與實(shí)現(xiàn)

        中南民族大學(xué)計(jì)算機(jī)科學(xué)學(xué)院 黃 俊

        Unity3D是由Unity Technologies公司開(kāi)發(fā)的專業(yè)跨平臺(tái)游戲開(kāi)發(fā)的虛擬現(xiàn)實(shí)引擎,其打造了一個(gè)完美的夸平臺(tái)程序開(kāi)發(fā)生態(tài)鏈,用戶可以通過(guò)他輕松完成各種游戲創(chuàng)意和三維互動(dòng)開(kāi)發(fā),創(chuàng)作出精彩的游戲和虛擬仿真內(nèi)容。本文在介紹Unity 3D引擎的基礎(chǔ)上,以一款《拼圖游戲》為例,詳細(xì)講述了拼圖游戲中顯示碎片,打亂碎片,移動(dòng)控制,游戲結(jié)束檢測(cè)等C#腳本的編寫方法與技巧。

        Unity3d;游戲開(kāi)發(fā);拼圖游戲;C#

        1 Unity 3D引擎簡(jiǎn)介

        Unity3D是一款國(guó)際領(lǐng)先的專業(yè)游戲引擎,其精簡(jiǎn)、直觀的工作流程,功能強(qiáng)大的工具集,使得游戲開(kāi)發(fā)周期大幅度縮短。Unity3d編輯器可以運(yùn)行在Windows、Mac OS X以及Linux平臺(tái)。其最主要的特點(diǎn)如下:一次開(kāi)發(fā)就可以部署到時(shí)下所有主流游戲平臺(tái),目前Unity能夠支持發(fā)布的平臺(tái)有23個(gè)之多。用戶無(wú)須二次開(kāi)發(fā)好移植,就可以輕松部署到相應(yīng)的平臺(tái),節(jié)省了大量的開(kāi)發(fā)時(shí)間和精力。在移動(dòng)互聯(lián)網(wǎng)大行其道的今天,Unity正吸引著越來(lái)越多人的關(guān)注。本案例以Unity 5.3為例開(kāi)發(fā)游戲。

        2 《拼圖游戲》的設(shè)計(jì)與實(shí)現(xiàn)

        2.1 本項(xiàng)目的制作流程

        在此次要完成的射擊類項(xiàng)目中,由于人力物力等各種客觀條件的限制,沒(méi)有特別明確的分工,包括策劃、美術(shù)和程序基本都是作者一個(gè)人完成的,特別需要指出的是,在美術(shù)和聲音資源方面借助了一部分網(wǎng)絡(luò)上的資源。具體制作流程圖如下所示圖2.1所示。

        圖2.1 項(xiàng)目制流程

        2.2 游戲策劃

        拼圖游戲策劃內(nèi)容是:游戲由以下兩個(gè)場(chǎng)景組成,第一個(gè)場(chǎng)景是初始界面設(shè)計(jì)兩個(gè)按鈕“開(kāi)始”和“退出”,單機(jī)“開(kāi)始”進(jìn)入第二游戲界面,在拼圖游戲界面上方有3個(gè)按鈕“3×3”,“4×4”, “5×5”可以設(shè)置游戲的難度,界面下方有一個(gè)關(guān)閉按鈕,單機(jī)鼠標(biāo)左鍵能夠移動(dòng)可移動(dòng)的拼圖碎片,當(dāng)拼圖被拼好時(shí)屏幕會(huì)顯示完成的時(shí)間。

        2.3 游戲UI設(shè)計(jì)

        設(shè)計(jì)拼圖游戲之前,初步設(shè)定了 600*960 的屏幕分辨率,這個(gè)分辨率基本上能和市面上主流的智能手機(jī)屏幕分辨率相匹配。在確定好了游戲的屏幕分辨率之后,游戲項(xiàng)目中所有的U圖片的尺寸都是圍繞這個(gè)標(biāo)準(zhǔn)來(lái)設(shè)計(jì)的。在制作這些 UI界面的時(shí)候,借助了目前最流行的平面設(shè)計(jì)軟件Photoshop。主要的制作效果會(huì)在后面展示,具體的制作流程就不在一一贅述。

        2.3.1 主要UI界面展示

        圖2.2所示為游戲開(kāi)始界面,圖2.3所示為3×3難度界面,圖2.4所示為4×4難度界面,圖2.5所示為5×5難度界面,圖2.6所示為拼圖完成界面。

        圖2.2 開(kāi)始界面

        圖2.3 3難度界面

        圖2.4 4 難度界面

        圖2.5 5難度界面

        圖2.6 完成界面

        2.3.2 游戲UI之間的邏輯關(guān)系

        在游戲開(kāi)始界面(上圖2.2)點(diǎn)擊開(kāi)始進(jìn)入游戲界面(上圖2.3),在游戲界面選擇不同的難度進(jìn)入相對(duì)應(yīng)的界面(上圖2.3,2.4.2.5),如果拼圖完成則進(jìn)入游戲完成界面(上圖2.6),點(diǎn)擊關(guān)閉按鈕則退出游戲。

        2.4 游戲中C#腳本概述

        為了實(shí)現(xiàn)這款游戲,筆者共編寫了3個(gè)C#腳本程序,如下圖2.7所示,每個(gè)程序都有各自的分工,分別實(shí)現(xiàn)對(duì)應(yīng)的功能。GridData類是拼圖游戲中的格子類,Start MenuController類是游戲開(kāi)始界面的控制類,MainController類是游戲界面的控制類。

        圖2.7 游戲中C#腳本

        2.5 游戲主要功能的具體實(shí)現(xiàn)

        2.5.1 屏幕分辨率自適應(yīng)功能的實(shí)現(xiàn)

        為了此款拼圖游戲項(xiàng)目能夠適應(yīng)不同分辨率的智能手機(jī),筆者采用了固定寬高比的方法,實(shí)現(xiàn)了屏幕的自適應(yīng)功能。在此只需要將Resolusion的腳本掛在到不同的Scene的Main Camera上面即可。Resolusion腳本的核心代碼是如下:main Camera.aspect = 0.625f。

        2.5.2 拼圖碎片類

        GridData.cs是拼圖碎片類,為了處理碎片類的點(diǎn)擊事件,所以這個(gè)類要繼承于IPointerClickHandler類。在碎片類中有三個(gè)字段分別是顯示數(shù)字的Text字段,初始位置ID的int字段,當(dāng)前所在位置ID的int字段。此外還有一個(gè)判斷碎片是否到達(dá)正確位置的屬性IsFinish,如果當(dāng)前位置ID和初始位置ID相等,則該碎片已經(jīng)到達(dá)正確的位置。GridData.cs類中的InitData(int id)方法是用來(lái)初始化碎片信息的。

        2.5.3 拼圖碎片移動(dòng)功能的實(shí)現(xiàn)

        在拼圖游戲界面中,如果被點(diǎn)擊拼圖在空格子周圍,則被點(diǎn)擊的拼圖會(huì)移動(dòng)到空的給子上,否則則不能移動(dòng)。

        2.5.4 創(chuàng)建拼圖功能的實(shí)現(xiàn)

        創(chuàng)建拼圖的功能是在MainController.cs類中CreateMap()方法實(shí)現(xiàn)的。確定創(chuàng)建的碎片個(gè)數(shù)MaxID之后,循環(huán)創(chuàng)建拼圖碎片預(yù)設(shè)體prefab,然后為創(chuàng)建的游戲?qū)ο筇砑覩irdData組件,并將創(chuàng)建的游戲?qū)ο蟠鎯?chǔ)到數(shù)組中以便管理。

        2.5.5 打亂拼圖碎片順序功能的實(shí)現(xiàn)

        在拼圖游戲中,打亂拼圖順序的功能是在MainController.cs類中Rank()方法實(shí)現(xiàn)的。其原理是讓空的格子和隨機(jī)和周圍的拼圖碎片隨機(jī)的交換位置,交換很多次之后拼圖的順序就會(huì)自然打亂,這里筆者的交換次數(shù)是行數(shù)乘以1000次。

        2.6 游戲發(fā)布

        游戲發(fā)布是研發(fā)游戲的最后一個(gè)環(huán)節(jié),前面筆者講到了游戲發(fā)布的相關(guān)知識(shí),在這里筆者把游戲項(xiàng)目發(fā)布成.apk格式的Android手機(jī)游戲。各種環(huán)境都配置好之后,就不需要做任何改動(dòng),點(diǎn)擊Build 就可以發(fā)布了。

        3 結(jié)束語(yǔ)

        目前,由于智能手機(jī)硬件的快速發(fā)展、智能手機(jī)的普及以及很多年輕人對(duì)于游戲的需求,手機(jī)游戲行業(yè)具有不可估量的市場(chǎng)潛力。Unity3D 引擎為快速開(kāi)發(fā)跨平臺(tái)的移動(dòng)游戲提供了完美的解決方案,未來(lái)幾年必定是移動(dòng)游戲和 Unity3D 引擎大行其道的時(shí)代。在對(duì) Unity3D 引擎研究的這段時(shí)間,筆者學(xué)到了很多有用的東西,繼續(xù)學(xué)習(xí)新的知識(shí),并希望能做出更多更有益的游戲,豐富人們的業(yè)余生活。

        [1]吳志達(dá).一個(gè)基于 Unity3D 游戲引擎的體感游戲研究與實(shí)現(xiàn)[D].廣州:中山大學(xué),2012.

        [2]陳俊峰.基于 Unity3D 的跨平臺(tái)手機(jī)網(wǎng)絡(luò)游戲的研究與實(shí)現(xiàn)[D].廣州:中山大學(xué),2013.

        猜你喜歡
        腳本引擎分辨率
        酒駕
        安奇奇與小cool 龍(第二回)
        EM算法的參數(shù)分辨率
        原生VS最大那些混淆視聽(tīng)的“分辨率”概念
        數(shù)據(jù)庫(kù)系統(tǒng)shell腳本應(yīng)用
        藍(lán)谷: “涉藍(lán)”新引擎
        商周刊(2017年22期)2017-11-09 05:08:31
        快樂(lè)假期
        基于深度特征學(xué)習(xí)的圖像超分辨率重建
        一種改進(jìn)的基于邊緣加強(qiáng)超分辨率算法
        無(wú)形的引擎
        河南電力(2015年5期)2015-06-08 06:01:46
        国产精品天天狠天天看| 国产精品第一二三区久久| 国内免费高清在线观看| 一本一道波多野结衣一区| 免费国产一级片内射老| 好看的国内自拍三级网站| 中文字幕在线亚洲三区| 亚洲一区 日韩精品 中文字幕| 国产羞羞视频在线观看| 亚洲av粉嫩性色av| 亚洲综合一区二区三区天美传媒 | 男人一插就想射的原因| 久久久久99人妻一区二区三区 | 一区二区在线观看日本视频| 五月av综合av国产av| 国产成人久久777777| 亚洲欧美日韩精品香蕉| 亚洲婷婷久久播66性av| 亚洲中文字幕无码不卡电影| 国产精品内射后入合集| 国产精品女同久久久久久| 精品国产一区二区三区av麻| 最爽无遮挡行房视频| 亚洲免费不卡| 中文字幕被公侵犯的丰满人妻| 无套内谢孕妇毛片免费看| 亚洲欧美在线观看| 亚洲va欧美va人人爽夜夜嗨| 一本色道久久88加勒比综合| 久久精品www人人爽人人| 精品国产高清a毛片无毒不卡| 国产激情视频免费观看| 亚洲最大中文字幕在线| 国产高清在线精品一区二区三区| 亚洲AV无码成人精品区网页| av男人天堂网在线观看| 亚洲妇熟xxxx妇色黄| 中文幕无线码中文字蜜桃| 最新亚洲av日韩av二区一区| 日本精品一区二区三区福利视频| 野花社区视频www官网|