摘要:
今天物理学已成为了游戏的一个重要组成部分,但你也看到它不是很容易将一个现成的物理引擎在XNA中实现。但是,你仍然可以通过自己的方式实现物理引擎,并可运行于Xbox 360上,而Xbox 360上是不允许非托管代码的。 物理学有许多议题,可以肯定全部都自己实现是不容易的,即使有一个良好的物理引擎你还必须做大量的调整和测试。然而,如果与你竞争的另一个游戏有大量的物理效果又不破坏游戏的乐趣,那么相对你... 阅读全文
posted @ 2010-10-16 23:58
AlexCheng
阅读(223)
评论(0)
推荐(0)
摘要:
如果前一章你觉得容易,现在将有点难。你的任务是查看CarPhysics类并弄懂如何相同的物理代码和碰撞检测是如何将车保持在赛道上,以及如何处理与护栏(不是一条直线)的碰撞。 要完成此项任务,最好是写一个单元测试,它绘制赛路,并让你以在TestCarPhysicsOnPlaneWithGuardRails单元测试中同样的方式控制汽车,以同样的方式处理游戏本身。但是,你也可以在CarPhysics类的... 阅读全文
posted @ 2010-10-16 23:57
AlexCheng
阅读(231)
评论(0)
推荐(0)
摘要:
车辆碰撞检测 借助于前面的代码,我们已经知道如何检测汽车与护栏的碰撞。只需创建两个碰撞平面,每个护栏一个,然后检查四个轮子与这两个平面的碰撞。因为赛车不仅是一个球体,因此无法像小行星那样做简单的处理,四个面都必须检测,但只检测四轮的位置(或至少是赛车的最外层)仍能实现基本碰撞检测(见图13-15)。 Figure 13-15 碰撞检测的代码在CarPhysics类的ApplyGravityAn... 阅读全文
posted @ 2010-10-16 23:56
AlexCheng
阅读(716)
评论(0)
推荐(0)
摘要:
实现物理效果 现在可以深入讨论赛车游戏所需的物理学了。今天你能看到许多强大的物理引擎的一些功能,但因为它们很难被实现而且也没有用.NET编写,所以你将通过自己的方式实现物理引擎。 在本章开始你处理了汽车控制和简单的重力效果。目前缺少的是准确的碰撞检测系统,当撞上一个护栏时你的车应该停止。你还将处理一些比较复杂的情况,比如说通过环形轨道等。环形轨道不难实现。借助于上一章的赛道生成代码,你能很容易地... 阅读全文
posted @ 2010-10-16 23:52
AlexCheng
阅读(531)
评论(0)
推荐(0)
浙公网安备 33010602011771号