首页 > web前端 > js教程 > 使用JavaScript创建一个简单的Windows 8游戏:游戏逻辑

使用JavaScript创建一个简单的Windows 8游戏:游戏逻辑

William Shakespeare
发布: 2025-02-25 17:38:13
原创
782 人浏览过

使用JavaScript创建一个简单的Windows 8游戏:游戏逻辑

钥匙要点

  • 游戏循环是任何游戏的心跳,是一个每秒运行多次的函数,并且有两个主要作业
  • 更新正在发生的事情并绘制新场景。 Easeljs ticker类用于管理游戏循环的时间安排,暂停/恢复游戏循环并测量经过的时间。
  • 游戏逻辑涉及添加用于发射镜头,更新显示器,移动射击,处理命中和结束游戏的功能。 easeLjs displayObjects支持一个hittest()方法,这使得可以轻松查看当前对象的位置是否存在点。
这是四个星期内四个帖子的系列中的第三部,它将向您展示如何使用HTML5,JavaScript,Winjs和CreateJS创建一个简单的Windows 8游戏。 该游戏基于XNA样本游戏“弹射战争实验室”。当我们为Windows 8开发基于Web技术的Windows 8的新版本时,我们将重复使用该游戏的资产。 在这篇文章中,我们将使用一些游戏逻辑和JavaScript将事物栩栩如生。

游戏循环

任何游戏的心跳是游戏循环。  这是一个每秒多次运行的函数,并具有两个主要作业 - 更新发生的事情,然后绘制新场景。 在第2部分中,我们已经进行了大纲: 使用JavaScript创建一个简单的Windows 8游戏:游戏逻辑 现在的问题是,我们如何启动gameloop()函数并保持每秒多次运行?

easeljs ticker class

幸运的是,Easeljs的股票类别具有我们将使用的一些功能:
  • 管理游戏循环的时机
  • 暂停/恢复游戏循环
  • 测量经过的时间
这是一个静态类,因此我们可以开始使用它。  在default.js中,添加一个新的startGame()函数,并在prepargame()末尾调用它: 使用JavaScript创建一个简单的Windows 8游戏:游戏逻辑 在这里,我们告诉使用window.requestanimatimationframe来控制Gameloop函数的频率。 requestAnimationFrame是Web应用程序的相对较新的API,可帮助确保不必要地完成工作。  要了解为什么这比设置固定计时器(例如使用Settimeout())更好,请参见IE测试驱动器网站上的RequestAnimationFrame样本。 使用JavaScript创建一个简单的Windows 8游戏:游戏逻辑 每当RequestAnimationFrame准备就绪时,我们的游戏循环都会运行。

“准备好,瞄准,开火!”

好的,现在我们有一个游戏循环的游戏,所以是时候添加一些乐趣了! 每个玩家/弹射器都将向另一个发射弹药/岩石。  我们需要知道目前是否开枪,转弯是谁以及镜头的移动方式。 首先,让我们添加更多变量到default.js: 使用JavaScript创建一个简单的Windows 8游戏:游戏逻辑 现在,让我们通过将以下内容添加到update()函数: 使用JavaScript创建一个简单的Windows 8游戏:游戏逻辑 目前,两个玩家都会自动发射(以随机的速度发射)。  AmmobitMap移至射击弹射器的顶部中心,并在有界范围内给予射速值(按屏幕分辨率调整)。 我们还将添加一个fireshot()功能以显示镜头并告诉游戏中的游戏: 使用JavaScript创建一个简单的Windows 8游戏:游戏逻辑  

更新显示

在我们在空中移动镜头之前,让我们专注于游戏循环方程式的第二半部分 - 绘制到屏幕上。  这通常非常复杂,但是Easeljs阶段会照顾我们的内容(所有孩子 - 位图,文字等 - 我们添加到舞台上),因此我们需要:这就是我们所需要的: 使用JavaScript创建一个简单的Windows 8游戏:游戏逻辑 就是这样!  如果您运行游戏,则玩家1将自动开枪,而射门将出现在红色弹射器上… 使用JavaScript创建一个简单的Windows 8游戏:游戏逻辑 …但是它不会让人感到不安。  让我们走动。

移动射击

让我们返回到update()函数,然后将逻辑添加到if(shotFlying)语句中: 使用JavaScript创建一个简单的Windows 8游戏:游戏逻辑 不要运行它,我们仍然需要两个功能,但这是发生的事情:
  • 线149&150 - 通过添加速度(可能为负数和/或左)移动镜头
  • 第151行 - 将重力应用于慢速
  • 线153-155 - 镜头是否撞到了屏幕的左侧或右边缘?
  • >第157-160行 - 错过 - 结束射门和更改播放器
  • >
  • >行162-168 - 播放器1的射门 - 查看是否命中播放器2。如果是,则更新玩家2的生活。
  • 行169-175 - 播放器2的射门 - 查看是否命中播放器1。如果是,则更新玩家1的生活。
  • >
  • 让我们添加校园(位图) 功能:
  • 关于Hittest的话题是什么?  easeljs displayObjects(基于哪个位图)支持hittest()方法,这使得很容易查看当前对象的位置是否存在点。  不幸的是,我们正在缩放对象,而Hittest仅适用于原始尺寸,因此我们需要检查自己的命中率。  只是一点点数学,我们已经设定了。
处理命中使用JavaScript创建一个简单的Windows 8游戏:游戏逻辑 现在,添加

processHit()

函数: 这只是结束射门,改变玩家,并确保游戏还没有结束。 结束游戏使用JavaScript创建一个简单的Windows 8游戏:游戏逻辑 让我们结束游戏结束这篇文章。  添加最终游戏(图像)函数:

就是这样!  现在,您可以运行游戏,看看谁获胜。

使用JavaScript创建一个简单的Windows 8游戏:游戏逻辑 使用JavaScript创建一个简单的Windows 8游戏:游戏逻辑下一步是什么?使用JavaScript创建一个简单的Windows 8游戏:游戏逻辑 我们在这一部分中增加了很多东西 - 事情正在绘画,移动,击球,结局……但是有两个张开的孔。  首先,播放器实际上没有玩,因此我们将接下来添加输入处理。  其次,事情非常安静,尤其是对于战争,所以我们也会折腾一些声音。 到第4部分:下周!

经常询问有关使用JavaScript创建简单Windows 8游戏的问题

>如何开始使用Windows 8的JavaScript创建游戏?您还需要安装Visual Studio,这是Windows 8应用程序的开发环境。拥有这些先决条件后,您可以首先在Visual Studio中创建一个新项目并选择“空白应用程序”模板。从那里,您可以开始在JavaScript中编写游戏逻辑,并使用HTML5和CSS设计游戏界面。

>

>我可以使用JavaScript创建的游戏示例是什么?可以用来创建各种游戏的编程语言。一些示例包括益智游戏,策略游戏,平台游戏,甚至3D游戏。可能性是无穷无尽的,借助正确的工具和资源,您可以创建您可以想象的任何类型的游戏。

>如何在JavaScript游戏中添加互动性?这些是发生特定事件时会触发的功能,例如鼠标单击或按键按下。例如,当用户单击游戏元素或“ onkeydown”事件时,您可以使用“ onclick”事件触发功能测试和调试我的JavaScript游戏?

测试和调试是游戏开发的关键部分。 Visual Studio提供了一个强大的调试工具,可让您浏览代码,检查变量并确定任何错误或错误。您还可以使用控制台登录消息并跟踪代码的执行。

>如何优化我的JavaScript游戏以进行性能?

>优化性能的JavaScript游戏涉及许多技术。其中包括最大程度地减少全局变量的使用,使用RequestAnimationFrame用于游戏循环,优化您的图像和资产以及使用有效的游戏逻辑算法。在各种设备和浏览器上测试游戏以确保其运行顺利也很重要。

>如何在我的JavaScript游戏中添加声音和音乐?使用HTML5音频API进行JavaScript游戏。这使您可以加载和播放声音文件,控制音量,甚至创建声音效果。您还可以使用诸如howler.js之类的库来简化过程并添加更高级的音频功能。

>一旦完成开发后,我如何在Windows Store上发布我的JavaScript游戏?您的游戏,您可以通过创建商店帐户,注册您的应用并提交认证来将其发布在Windows Store上。您需要提供有关游戏的屏幕截图,描述和其他信息。一旦您的游戏获得批准,它将可以在Windows Store上下载。

我可以将我的JavaScript游戏货币化吗?

是的,您可以以多种方式将JavaScript游戏货币化。一种选择是在Windows Store上出售您的游戏。您还可以包括应用内购买,玩家可以购买其他内容或功能。另一个选择是在您的游戏中显示广告,尽管应该很少这样做以避免破坏游戏玩法的体验。

>

我可以使用JavaScript为其他平台创建游戏吗?不限于Windows 8或任何特定平台。借助正确的工具和库,您可以创建在各种平台上运行的游戏,包括Web浏览器,移动设备甚至游戏机。一些与JavaScript进行跨平台游戏开发的流行库,包括Phaser,Pixi.js和Trix.js。

我在哪里可以通过JavaScript了解有关游戏开发的更多信息? W3Schools,Mozilla开发人员网络和CodeCademy等网站提供了有关JavaScript和游戏开发的教程和指南。还有很多书籍,在线课程和论坛,您可以在这里学习和获得其他开发人员的帮助。

以上是使用JavaScript创建一个简单的Windows 8游戏:游戏逻辑的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板