999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Unity環(huán)境中《坦克大戰(zhàn)》雙人游戲的研究與實現(xiàn)

2018-05-14 13:52:17易威環(huán)
關(guān)鍵詞:游戲

易威環(huán)

[摘 要] 采用Unity3D5.6.1+VS2013+C#語言為開發(fā)環(huán)境設(shè)計《坦克大戰(zhàn)》雙人游戲,其中首先搭建了游戲場景,再設(shè)計雙人控制環(huán)境并實現(xiàn),最后實現(xiàn)子彈的發(fā)射,從而實現(xiàn)完整的雙人游戲功能,逐一進行講解,并配有詳細的代碼及圖例。

[關(guān) 鍵 詞] unity;VS;坦克大戰(zhàn);游戲

[中圖分類號] G898.2 [文獻標(biāo)志碼] A [文章編號] 2096-0603(2018)08-0118-01

一、場景搭建

1.新建項目TankShot,將資源包TankAssset.unitypackage導(dǎo)入并拖出場景LevelArt,并除平行光,調(diào)整天空盒Source為Color。

2.添加坦克Tank,增加剛體、碰撞盒,并通過Edit Collider調(diào)整碰撞盒大小。

3.添加灰塵效果,將資源庫中的Prefabs/DustTrail拖入坦克后輪,左右各一個,通過調(diào)整為Back視圖、Top視圖進行定位。

二、雙人控制

1.將原坦克設(shè)為預(yù)設(shè)體,并在場景中添加另一臺坦克Tank1,如果場景中的某坦克有修改,為了能使由預(yù)設(shè)體產(chǎn)生的所有對象都能改變,需點擊組件面板上的“Apply”按鈕。

2.先增加六套按鍵(注:小回車:enter,大回車:return左Ctrl:left ctrl,Negative:負,Positive:正,系統(tǒng)已經(jīng)有的鍵定義不能刪除):

Horizontal1:a/d鍵 Vertical1:s/w鍵 Horizontal2:left/right鍵

Vertical2:down/up鍵 fire1:space鍵 fire2:return

3.新建腳本:TankMovement

public class TankMovement:MonoBehaviour {

private Rigidbody m_rigidbody;

private float moveValue,turnValue,moveSpeed,turnSpeed;//移動、旋轉(zhuǎn)的值和速度

private string moveAxisName,turnAxisName;

public int playerNum;//玩家序號

void Start () {

m_rigidbody = GetComponent();//獲取坦克身上的剛體組件

moveAxisName = "Vertical" + playerNum;

turnAxisName = "Horizontal" + playerNum;

}

void Update () {

moveValue = Input.GetAxis(moveAxisName);//按左右鍵或a、d鍵

turnValue = Input.GetAxis(turnAxisName);//按上下鍵或w、s鍵

}

void FixedUpdate() { //物理更新,一直按0.02秒進行更新

Move(); Turn();

}

void Move(){ //移動

Vector3 movements=transform.forward*moveValue* Time.delta Time *moveSpeed;

m_rigidbody.MovePosition(m_rigidbody.position + movements);//實現(xiàn)移動

}

void Turn() { //旋轉(zhuǎn)

float turn = turnValue * Time.deltaTime * turnSpeed;//具體的旋轉(zhuǎn)角度

Quaternion turnRotation = Quaternion.Euler(0,turn,0);//繞y軸旋轉(zhuǎn)

m_rigidbody.MoveRotation(m_rigidbody.rotation * turnRotat-ion);

} }

4.將腳本拖放在兩上Tank上,分別設(shè)置其playNam為1、2,為防止坦克飛起來,可如圖將坦克預(yù)設(shè)體鎖定。

三、發(fā)射炮彈

1.在Tank游戲?qū)ο笊闲陆諏ο螅篢ankShellPos,調(diào)整在槍口位置:通過Left視圖進行調(diào)整,繞X軸旋轉(zhuǎn)-15度。

2.從Shell中拖出子彈Shell,添加剛體,拖到項目視圖Prefabs中為預(yù)設(shè)體,將場景中的子彈刪除。

3.新建TankShotting:

public class TankShotting :MonoBehaviour {

private string fireButton;

public int playerNum;//玩家編號

public Rigidbody shell;//炮彈

public Transform fireTransform;//攻擊位置

void Start () {

fireButton = "fire" + playerNum;

}

void Update () {

if (Input.GetButtonDown(fireButton)) {

Fire();

} }

void Fire() {

Rigidbody shellInstance=Instantiate(shell,fireTransform.position,fireTransform.rotation);

shellInstance.velocity = fireTransform.forward * 10;//給炮彈添加速度

} }

4.將腳本TankShotting掛在Tank上,并進行設(shè)置,然后點擊Apply按鈕,在Tank1上,設(shè)置player Num為2。

四、運行游戲

一個用戶可通過按adsw和Enter鍵控制一輛坦克進行射擊,另一個用戶可通過按↑↓→←和Space控制另一輛坦克進行移動射擊。

五、小結(jié)

Unity是一款全面整合的專業(yè)游戲引擎,開發(fā)者編寫少量腳本就可輕松創(chuàng)建三維游戲。

參考文獻:

Unity Technologies. Unity 5.X從入門到精通[M].中國鐵道出版社,2016.

猜你喜歡
游戲
做游戲
夜間游戲
游戲
送信游戲
數(shù)獨游戲
瘋狂的游戲
飛碟探索(2016年11期)2016-11-14 19:34:47
爆笑游戲
第八章直接逃出游戲
第八章 直接逃出游戲
游戲五計算
主站蜘蛛池模板: 国产呦精品一区二区三区网站| 亚洲欧美另类色图| 欧美日韩精品一区二区视频| 中文字幕有乳无码| 蜜臀AVWWW国产天堂| 99久久国产综合精品女同| 九色视频一区| 日韩高清中文字幕| 亚洲国产一区在线观看| 波多野结衣中文字幕一区二区| 91成人精品视频| 男人的天堂久久精品激情| 国产精品高清国产三级囯产AV| 日韩免费毛片| jizz亚洲高清在线观看| 波多野结衣一区二区三区四区视频 | 国产SUV精品一区二区6| 中文字幕亚洲电影| 日韩欧美国产精品| 欧美成在线视频| 国产拍揄自揄精品视频网站| 国产精品永久久久久| 国产毛片高清一级国语| 日韩AV手机在线观看蜜芽| 久久超级碰| 亚洲区第一页| 欧美亚洲一二三区| 98精品全国免费观看视频| 久久精品无码专区免费| 国产成人精品视频一区视频二区| 中文无码精品a∨在线观看| 欧美成人综合在线| www.精品视频| 国产成人精品亚洲77美色| 天天综合色天天综合网| 人人艹人人爽| 天天爽免费视频| 好吊色妇女免费视频免费| 久久精品国产国语对白| 国产乱子伦手机在线| 中文字幕2区| 欧美日韩亚洲综合在线观看| 亚洲码在线中文在线观看| 色首页AV在线| 91久久精品国产| 亚洲第一成人在线| 国产精品嫩草影院av| 免费又黄又爽又猛大片午夜| 国产精品视频观看裸模| 免费不卡在线观看av| 操国产美女| 2019年国产精品自拍不卡| 大香网伊人久久综合网2020| 成年免费在线观看| 亚洲制服丝袜第一页| 亚洲人成网线在线播放va| 成人va亚洲va欧美天堂| 精品精品国产高清A毛片| 国产精品黄色片| 日韩欧美中文亚洲高清在线| 伊人狠狠丁香婷婷综合色| 亚洲最新地址| 无码精品一区二区久久久| 国产美女视频黄a视频全免费网站| 中美日韩在线网免费毛片视频| 国产免费观看av大片的网站| 国产99精品久久| 国产精品2| 国产激情影院| 少妇高潮惨叫久久久久久| 国产精品林美惠子在线播放| 亚洲中字无码AV电影在线观看| 自慰高潮喷白浆在线观看| 免费A级毛片无码无遮挡| 成人福利免费在线观看| 无码'专区第一页| 成人午夜网址| 好吊色国产欧美日韩免费观看| 色综合天天娱乐综合网| 亚洲二区视频| 天天色天天综合| 538国产在线|