明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

韓順平H5游戲開發(fā)坦克大戰(zhàn)視頻源碼課件分享

[摘要]《韓順平H5游戲開發(fā)坦克大戰(zhàn)視頻教程》是選自韓順平的網(wǎng)絡(luò)公開課,介紹了如何使用HTML5來制作坦克大戰(zhàn)游戲,對(duì)H5的技術(shù)有很顯著的提高.我將會(huì)帶著大家做一個(gè)3D的俯視坦克大戰(zhàn)游戲。將從最基本的控制,到敵人的AI與整個(gè)游戲的系統(tǒng)等一步步的帶著大家實(shí)現(xiàn)一個(gè)完整的游戲。教程中我們重點(diǎn)是程序與Unity的...
《韓順平H5游戲開發(fā)坦克大戰(zhàn)視頻教程》是選自韓順平的網(wǎng)絡(luò)公開課,介紹了如何使用HTML5來制作坦克大戰(zhàn)游戲,對(duì)H5的技術(shù)有很顯著的提高.我將會(huì)帶著大家做一個(gè)3D的俯視坦克大戰(zhàn)游戲。將從最基本的控制,到敵人的AI與整個(gè)游戲的系統(tǒng)等一步步的帶著大家實(shí)現(xiàn)一個(gè)完整的游戲。教程中我們重點(diǎn)是程序與Unity的使用,因此美術(shù)資源將不會(huì)做太多的講述。我會(huì)用一個(gè)來自Unity官方Training Day的資源包,

AF1LDP@VF%NY(FD_HDN4K1W.png

課程播放地址:http://www.php.cn/course/409.html

該老師講課風(fēng)格:

講課親切自然,樸實(shí)無華,沒有矯揉造作,也不刻意渲染,而是娓娓而談,細(xì)細(xì)道來,師生之間在一種平等、協(xié)作、和諧的氣氛下,進(jìn)行默默的情感交流,將對(duì)知識(shí)的渴求和探索融于簡樸、真實(shí)的教學(xué)情景之中,學(xué)生在靜靜的思考、默默的首肯中獲得知識(shí)

本視頻中較為難點(diǎn)是制作思路了:

鍵盤事件觸發(fā)問題:

如果需要玩家通過按鍵操控坦克進(jìn)行運(yùn)動(dòng),很多人第一個(gè)想到的應(yīng)該就是把相應(yīng)的運(yùn)動(dòng)函數(shù)綁定到相應(yīng)按鍵的onkeydown事件之上。

一般來說這么寫有一個(gè)問題,那就是為了防止諸如像老人松手慢導(dǎo)至鍵盤事件多次觸發(fā)這種情況,只有當(dāng)你按下按鍵到一定的時(shí)間以后事件才會(huì)連續(xù)進(jìn)行觸發(fā)。

這個(gè)問題反應(yīng)到游戲上就是你的坦克總是要在你按下按鍵后過一段時(shí)間才會(huì)開始連續(xù)運(yùn)動(dòng),非常影響游戲體驗(yàn)。

這個(gè)問題的解決方法很簡單:

let keyInfo = {};     //按鍵是否被按下的信息let aKey = [72 , 74 , 87 , 83 , 65 , 68 , 38 , 40 , 37 , 39 , 17];      //這里面的數(shù)字是wasdhj等按鍵的鍵值
for (let i = 0; i < aKey.length; i++) {
    keyInfo[aKey[i]] = {
        pressed : false
    }
}

將按鍵的鍵值作為屬性名,將按鍵狀態(tài)儲(chǔ)存到keyInfo對(duì)象中,初始值都為false,表明按鍵未按下。

在按下鍵盤上相應(yīng)的按鍵的時(shí)候,通過事件委托直接捕獲到按下按鍵的keyCode也就是鍵值。

onkeydown事件觸發(fā)以后將keyInfo中對(duì)應(yīng)的屬性設(shè)置為true,表明按鍵被按下,在onkeyup事件觸發(fā)以后再將keyInfo中對(duì)應(yīng)的屬性設(shè)置為false。

最后在游戲中循環(huán)檢測(cè)keyInfo中對(duì)應(yīng)按鍵的屬性的真假并執(zhí)行相應(yīng)的操作就可以了

路徑問題:

在不提坦克與子彈之間的碰撞問題的前提下,路徑問題基本上就是在確定你的坦克跟子彈(子彈的問題其實(shí)更復(fù)雜一點(diǎn),后面再詳細(xì)討論)在地圖上哪里能走哪里不能走,雖然這個(gè)問題并不是很復(fù)雜,但在我看來這個(gè)問題可以說是整個(gè)游戲的核心所在,因?yàn)楹竺婧芏鄦栴}都是圍繞著路勁而來。

等等

這里還給大家推薦了源碼資源的下載:http://www.php.cn/xiazai/learn/2048

資源里面給大家分享了視頻課件以及ppt:

  1. 素材

  2. 文檔

  3. 源碼

以上就是韓順平H5游戲開發(fā)坦克大戰(zhàn)視頻源碼課件分享的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!


網(wǎng)站建設(shè)是一個(gè)廣義的術(shù)語,涵蓋了許多不同的技能和學(xué)科中所使用的生產(chǎn)和維護(hù)的網(wǎng)站。