国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Unity3D移動(dòng)跨平臺(tái)游戲的設(shè)計(jì)與實(shí)現(xiàn)

2017-11-29 17:26:13薛玉倩李麗平
大經(jīng)貿(mào) 2017年10期
關(guān)鍵詞:跨平臺(tái)射擊引擎

薛玉倩+李麗平

【摘 要】 隨著移動(dòng)設(shè)備性能的快速提升,移動(dòng)通信網(wǎng)絡(luò)速度的不斷提高,致使移動(dòng)設(shè)備迅速普及。而游戲已成為移動(dòng)端用戶的裝機(jī)必備。移動(dòng)端游戲開(kāi)發(fā)已成為熱門(mén)行業(yè),但移動(dòng)端的系統(tǒng)平臺(tái)存在多樣性,成為移動(dòng)端游戲開(kāi)發(fā)的瓶頸。采用Unity3D進(jìn)行游戲開(kāi)發(fā),可以實(shí)現(xiàn)Unity3D移動(dòng)跨平臺(tái)游戲。

【關(guān)鍵詞】 Unity3D 移動(dòng)設(shè)備 4G 跨平臺(tái)

1 引言

近年來(lái),隨著4G的出現(xiàn),移動(dòng)互聯(lián)網(wǎng)的網(wǎng)速大幅度提升,移動(dòng)互聯(lián)網(wǎng)發(fā)展速度異常迅猛。移動(dòng)設(shè)備的硬件也以極為迅速的速度在發(fā)展。移動(dòng)設(shè)備的CPU由原先的單核發(fā)展到現(xiàn)在的四核,存儲(chǔ)空間也由以前的幾K發(fā)展到128G。移動(dòng)設(shè)備已成為人們?nèi)粘I?、辦公等主要使用的終端。而游戲已成為移動(dòng)設(shè)備的裝機(jī)必備,近幾年游戲產(chǎn)業(yè)也在發(fā)生著巨變,大型客戶端游戲在火爆幾年后,網(wǎng)頁(yè)游戲又快速發(fā)展,玩家數(shù)量快速增長(zhǎng)。但隨著移動(dòng)設(shè)備的普及,移動(dòng)平臺(tái)上的高質(zhì)量3D游戲已成為現(xiàn)實(shí),這樣大量的玩家必然被吸引到移動(dòng)端。另外,越來(lái)越多的移動(dòng)平臺(tái)也加入了競(jìng)爭(zhēng),比如ios、Android、Windows Phone、Black Berry,這就帶來(lái)了移動(dòng)端游戲跨平臺(tái)的問(wèn)題。Unity3D是由Unity Technologies開(kāi)發(fā)的跨平臺(tái)的,使游戲開(kāi)發(fā)者能輕松完成高運(yùn)行效率游戲開(kāi)發(fā)的游戲引擎。Unity3D具有異常強(qiáng)大的功能,除了可以跨平臺(tái)以外,還能解決由于屏幕尺寸不同、操作方式差異,硬件條件相差較大等問(wèn)題,大幅度提高了游戲的可移植性[1]。

2 游戲功能設(shè)計(jì)

目前,移動(dòng)設(shè)備游戲的開(kāi)發(fā)非?;鸨?,越來(lái)越多的人都在空閑時(shí)間玩手機(jī),這也是移動(dòng)端游戲受歡迎的原因之一。所以移動(dòng)端手機(jī)的設(shè)計(jì)要操作簡(jiǎn)單、便捷,因此采用關(guān)卡式,隨時(shí)可以停下來(lái)。本文采用Unity3D開(kāi)發(fā)坦克射擊游戲,靠炮擊目標(biāo)數(shù)來(lái)獲得相應(yīng)分?jǐn)?shù) [2]。

3 基于Unity3D移動(dòng)跨平臺(tái)游戲的實(shí)現(xiàn)

3.1 游戲場(chǎng)景

射擊類的游戲其都會(huì)擁有較大的場(chǎng)景,因此其場(chǎng)景無(wú)法在游戲界面中全面顯示,因此要給游戲界面添加一個(gè)UV動(dòng)畫(huà)。在游戲中,游戲背景是一直向下移動(dòng),主角在不停的移動(dòng),從而使玩家感覺(jué)整個(gè)畫(huà)面在移動(dòng),因此有一種動(dòng)態(tài)視覺(jué)效果。

動(dòng)態(tài)背景的原理就是用一張圖片進(jìn)行循環(huán)滾動(dòng),從而實(shí)現(xiàn)動(dòng)畫(huà)過(guò)程,為了實(shí)現(xiàn)背景的循環(huán)滾動(dòng),需將其循環(huán)播放模式設(shè)置為L(zhǎng)oop[3]。

3.2 主角移動(dòng)與射擊的實(shí)現(xiàn)

在游戲中主角需要移動(dòng)、射擊、自身旋轉(zhuǎn)、與炮臺(tái)旋轉(zhuǎn)。MonoDevelop類中有一個(gè)Update函數(shù),在每一幀執(zhí)行時(shí),該函數(shù)都會(huì)被調(diào)用。移動(dòng)、射擊、自身旋轉(zhuǎn)與炮臺(tái)旋轉(zhuǎn)代碼如下[3]。

x=Input.GetAxis("Horizontal")*Time.deltaTime*speed;

z=Input.GetAxis("Vertical")*Time.deltaTime*speed;

transform.Translate(x,0,z);

if (Input.GetMouseButtonDown (0)) {

GameObject b=(GameObject)Instantiate(ball,transform.position,transform.rotation); b.rigidbody.AddForce(transform.up*1000);

}

if (Input.GetKey (KeyCode.Z)) {

transform.rotation = Quaternion.Slerp (transform.rotation, Quaternion.Euler (60,0,0), Time.deltaTime);

transform.rotation = Quaternion.Slerp (transform.rotation, Quaternion.Euler (60,-30,0), Time.deltaTime);

}

if (Input.GetKey (KeyCode.C)) {

transform.rotation = Quaternion.Slerp (transform.rotation, Quaternion.Euler (60,0,0), Time.deltaTime);

transform.rotation = Quaternion.Slerp (transform.rotation, Quaternion.Euler (60,30,0), Time.deltaTime);

}

3.3 目標(biāo)的產(chǎn)生與消滅

在游戲中射擊目標(biāo)是動(dòng)態(tài)產(chǎn)生的,其產(chǎn)生的代碼如下[4]。

float x = pos.transform.position.x;

float y = 1;

float z = pos.transform.position.z;

for (int m=0; m<10; m++) {

for(int i=0;i<10;i++){

Instantiate(comp,new Vector3(x+m,y+i,z+50),Quaternion.identity);

}

}

當(dāng)游戲目標(biāo)被擊打到地面以下,主角就應(yīng)加分。其代碼如下。

if(gameObject.transform.position.y<0)

{sj=gameObject.Find("Main Camera").GetComponent(sheji).sjshu;

xm=++gameObject.Find("Main Camera").GetComponent(sheji).dstshu; if(xm>20)

{gameObject.Find("wenzi").GetComponent(GUIText).text="congradulation,success";

gameObject.Find("Main Camera").GetComponent(sheji).enabled=false;

}

Destroy(gameObject);

}

結(jié) 語(yǔ)

本文具體分析了Unity3D引擎的特性,研究了Unity3D引擎在開(kāi)發(fā)移動(dòng)設(shè)備游戲過(guò)程中的關(guān)鍵技術(shù),并在此基礎(chǔ)以Unity3D游戲引擎為開(kāi)發(fā)平臺(tái)開(kāi)發(fā)了射擊類游戲項(xiàng)目,并最終實(shí)現(xiàn)了跨平臺(tái)。

【參考文獻(xiàn)】

[1]劉光然.虛擬現(xiàn)實(shí)技術(shù)[M].北京:清華大學(xué)出版社,2011.

[2] 汪超順.虛擬現(xiàn)實(shí)的特點(diǎn)與應(yīng)用[J].科技大觀園,2009,(22):43-44.

[3] 宣雨松.Unity3D游戲開(kāi)發(fā)[M]北京:人民郵電出版社,2012.

[4] HengLia,MiaojiaLua,GregGhana,etal.Proactive training system for safe and efficient precast installation [J].Automation in Construction,2015,49(A):163-174.endprint

猜你喜歡
跨平臺(tái)射擊引擎
畫(huà)與理
為什么射擊最高的成績(jī)是10.9環(huán),而不是11環(huán)
機(jī)槍射擊十八式
跨平臺(tái)APEX接口組件的設(shè)計(jì)與實(shí)現(xiàn)
藍(lán)谷: “涉藍(lán)”新引擎
商周刊(2017年22期)2017-11-09 05:08:31
實(shí)戰(zhàn)化近距離快速射擊方法初探
無(wú)形的引擎
河南電力(2015年5期)2015-06-08 06:01:46
基于QT的跨平臺(tái)輸電鐵塔監(jiān)控終端軟件設(shè)計(jì)與實(shí)現(xiàn)
基于OPC跨平臺(tái)通信的電機(jī)監(jiān)測(cè)與診斷系統(tǒng)
基于B/S的跨平臺(tái)用戶界面可配置算法研究
顺昌县| 临江市| 彰化县| 兰溪市| 尼玛县| 金溪县| 安陆市| 阿勒泰市| 宣化县| 华池县| 望江县| 玉田县| 兴文县| 河东区| 岑巩县| 顺平县| 潢川县| 昭平县| 博乐市| 津南区| 调兵山市| 扎鲁特旗| 绥芬河市| 莱阳市| 中方县| 永泰县| 疏勒县| 元阳县| 东至县| 琼中| 临洮县| 蚌埠市| 巩留县| 彰武县| 鲁甸县| 定远县| 百色市| 平顺县| 公主岭市| 大新县| 云安县|