视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
韩顺平H5游戏开发坦克大战视频源码课件分享
2020-11-27 15:28:41 责编:小采
文档
 《韩顺平H5游戏开发坦克大战视频教程》是选自韩顺平的网络公开课,介绍了如何使用HTML5来制作坦克大战游戏,对H5的技术有很显著的提高.我将会带着大家做一个3D的俯视坦克大战游戏。将从最基本的控制,到敌人的AI与整个游戏的系统等一步步的带着大家实现一个完整的游戏。教程中我们重点是程序与Unity的使用,因此美术资源将不会做太多的讲述。我会用一个来自Unity官方Training Day的资源包,

课程播放地址:http://www.gxlcms.com/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.gxlcms.com/xiazai/learn/2048

资源里面给大家分享了视频课件以及ppt:

  1. 素材

  2. 文档

  3. 源码

下载本文
显示全文
专题