您的位置:首页 > 其它

物理学——挑战:实现道路碰撞检测

2010-10-16 23:57 134 查看
如果前一章你觉得容易,现在将有点难。你的任务是查看CarPhysics类并弄懂如何相同的物理代码和碰撞检测是如何将车保持在赛道上,以及如何处理与护栏(不是一条直线)的碰撞。

要完成此项任务,最好是写一个单元测试,它绘制赛路,并让你以在TestCarPhysicsOnPlaneWithGuardRails单元测试中同样的方式控制汽车,以同样的方式处理游戏本身。但是,你也可以在CarPhysics类的Update方法设置断点来测试物理效果,然后通过步进代码看看变量是如何变化的。图13-16显示了这样一个单元测试。





Figure 13-16

如果你真的像扩展游戏并增加更多的功能,可以尝试改进物理效果甚至尝试实现一个物理引擎。至少在Windows平台上有可能改变游戏玩法,增加特效,并处理更复杂的碰撞情况。

一个小提示,如果你不知道在哪里寻找代码,或不知道赛道如何使用简单碰撞逻辑,请看看CarPhysics类UpdateCarMatrixAndCamera方法和Track类的GetTrackPositionMatrix方法。赛道矩阵将目前的道路片段转换为空间,以相同的方式使用汽车矩阵,两者在单元测试的平面碰撞检测中使用。

/*728*90文章内页广告*/ var cpro_id = 'u241919';
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: