韓順平H5游戲開發坦克大戰視頻源碼課件分享
發表時間:2023-12-29 來源:明輝站整理相關軟件相關文章人氣:
[摘要]《韓順平H5游戲開發坦克大戰視頻教程》是選自韓順平的網絡公開課,介紹了如何使用HTML5來制作坦克大戰游戲,對H5的技術有很顯著的提高.我將會帶著大家做一個3D的俯視坦克大戰游戲。將從最基本的控制,到敵人的AI與整個游戲的系統等一步步的帶著大家實現一個完整的游戲。教程中我們重點是程序與Unity的...
《韓順平H5游戲開發坦克大戰視頻教程》是選自韓順平的網絡公開課,介紹了如何使用HTML5來制作坦克大戰游戲,對H5的技術有很顯著的提高.我將會帶著大家做一個3D的俯視坦克大戰游戲。將從最基本的控制,到敵人的AI與整個游戲的系統等一步步的帶著大家實現一個完整的游戲。教程中我們重點是程序與Unity的使用,因此美術資源將不會做太多的講述。我會用一個來自Unity官方Training Day的資源包,

課程播放地址:http://www.php.cn/course/409.html
該老師講課風格:
講課親切自然,樸實無華,沒有矯揉造作,也不刻意渲染,而是娓娓而談,細細道來,師生之間在一種平等、協作、和諧的氣氛下,進行默默的情感交流,將對知識的渴求和探索融于簡樸、真實的教學情景之中,學生在靜靜的思考、默默的首肯中獲得知識
本視頻中較為難點是制作思路了:
鍵盤事件觸發問題:
如果需要玩家通過按鍵操控坦克進行運動,很多人第一個想到的應該就是把相應的運動函數綁定到相應按鍵的onkeydown事件之上。
一般來說這么寫有一個問題,那就是為了防止諸如像老人松手慢導至鍵盤事件多次觸發這種情況,只有當你按下按鍵到一定的時間以后事件才會連續進行觸發。
這個問題反應到游戲上就是你的坦克總是要在你按下按鍵后過一段時間才會開始連續運動,非常影響游戲體驗。
這個問題的解決方法很簡單:
let keyInfo = {}; //按鍵是否被按下的信息let aKey = [72 , 74 , 87 , 83 , 65 , 68 , 38 , 40 , 37 , 39 , 17]; //這里面的數字是wasdhj等按鍵的鍵值
for (let i = 0; i < aKey.length; i++) {
keyInfo[aKey[i]] = {
pressed : false
}
}
將按鍵的鍵值作為屬性名,將按鍵狀態儲存到keyInfo對象中,初始值都為false,表明按鍵未按下。
在按下鍵盤上相應的按鍵的時候,通過事件委托直接捕獲到按下按鍵的keyCode也就是鍵值。
onkeydown事件觸發以后將keyInfo中對應的屬性設置為true,表明按鍵被按下,在onkeyup事件觸發以后再將keyInfo中對應的屬性設置為false。
最后在游戲中循環檢測keyInfo中對應按鍵的屬性的真假并執行相應的操作就可以了
路徑問題:
在不提坦克與子彈之間的碰撞問題的前提下,路徑問題基本上就是在確定你的坦克跟子彈(子彈的問題其實更復雜一點,后面再詳細討論)在地圖上哪里能走哪里不能走,雖然這個問題并不是很復雜,但在我看來這個問題可以說是整個游戲的核心所在,因為后面很多問題都是圍繞著路勁而來。
等等
這里還給大家推薦了源碼資源的下載:http://www.php.cn/xiazai/learn/2048
資源里面給大家分享了視頻課件以及ppt:
素材
文檔
源碼
以上就是韓順平H5游戲開發坦克大戰視頻源碼課件分享的詳細內容,更多請關注php中文網其它相關文章!
網站建設是一個廣義的術語,涵蓋了許多不同的技能和學科中所使用的生產和維護的網站。