韓順平H5游戲開(kāi)發(fā)坦克大戰(zhàn)視頻源碼課件分享
發(fā)表時(shí)間:2024-05-14 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]《韓順平H5游戲開(kāi)發(fā)坦克大戰(zhàn)視頻教程》是選自韓順平的網(wǎng)絡(luò)公開(kāi)課,介紹了如何使用HTML5來(lái)制作坦克大戰(zhàn)游戲,對(duì)H5的技術(shù)有很顯著的提高.我將會(huì)帶著大家做一個(gè)3D的俯視坦克大戰(zhàn)游戲。將從最基本的控制,到敵人的AI與整個(gè)游戲的系統(tǒng)等一步步的帶著大家實(shí)現(xiàn)一個(gè)完整的游戲。教程中我們重點(diǎn)是程序與Unity的...
《韓順平H5游戲開(kāi)發(fā)坦克大戰(zhàn)視頻教程》是選自韓順平的網(wǎng)絡(luò)公開(kāi)課,介紹了如何使用HTML5來(lái)制作坦克大戰(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è)來(lái)自Unity官方Training Day的資源包,
課程播放地址:http://www.php.cn/course/409.html
該老師講課風(fēng)格:
講課親切自然,樸實(shí)無(wú)華,沒(méi)有矯揉造作,也不刻意渲染,而是娓娓而談,細(xì)細(xì)道來(lái),師生之間在一種平等、協(xié)作、和諧的氣氛下,進(jìn)行默默的情感交流,將對(duì)知識(shí)的渴求和探索融于簡(jiǎn)樸、真實(shí)的教學(xué)情景之中,學(xué)生在靜靜的思考、默默的首肯中獲得知識(shí)
本視頻中較為難點(diǎn)是制作思路了:
鍵盤(pán)事件觸發(fā)問(wèn)題:
如果需要玩家通過(guò)按鍵操控坦克進(jìn)行運(yùn)動(dòng),很多人第一個(gè)想到的應(yīng)該就是把相應(yīng)的運(yùn)動(dòng)函數(shù)綁定到相應(yīng)按鍵的onkeydown事件之上。
一般來(lái)說(shuō)這么寫(xiě)有一個(gè)問(wèn)題,那就是為了防止諸如像老人松手慢導(dǎo)至鍵盤(pán)事件多次觸發(fā)這種情況,只有當(dāng)你按下按鍵到一定的時(shí)間以后事件才會(huì)連續(xù)進(jìn)行觸發(fā)。
這個(gè)問(wèn)題反應(yīng)到游戲上就是你的坦克總是要在你按下按鍵后過(guò)一段時(shí)間才會(huì)開(kāi)始連續(xù)運(yùn)動(dòng),非常影響游戲體驗(yàn)。
這個(gè)問(wèn)題的解決方法很簡(jiǎn)單:
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,表明按鍵未按下。
在按下鍵盤(pán)上相應(yīng)的按鍵的時(shí)候,通過(guò)事件委托直接捕獲到按下按鍵的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)的操作就可以了
路徑問(wèn)題:
在不提坦克與子彈之間的碰撞問(wèn)題的前提下,路徑問(wèn)題基本上就是在確定你的坦克跟子彈(子彈的問(wèn)題其實(shí)更復(fù)雜一點(diǎn),后面再詳細(xì)討論)在地圖上哪里能走哪里不能走,雖然這個(gè)問(wèn)題并不是很復(fù)雜,但在我看來(lái)這個(gè)問(wèn)題可以說(shuō)是整個(gè)游戲的核心所在,因?yàn)楹竺婧芏鄦?wèn)題都是圍繞著路勁而來(lái)。
等等
這里還給大家推薦了源碼資源的下載:http://www.php.cn/xiazai/learn/2048
資源里面給大家分享了視頻課件以及ppt:
素材
文檔
源碼
以上就是韓順平H5游戲開(kāi)發(fā)坦克大戰(zhàn)視頻源碼課件分享的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!
網(wǎng)站建設(shè)是一個(gè)廣義的術(shù)語(yǔ),涵蓋了許多不同的技能和學(xué)科中所使用的生產(chǎn)和維護(hù)的網(wǎng)站。