【问题标题】:Making a simple car game with HTML5 canvas用 HTML5 画布制作一个简单的汽车游戏
【发布时间】:2011-10-29 16:40:46
【问题描述】:

我正在玩 HTML5 画布,在我的第一个实验中,我决定尝试使用基本的用户输入制作一个简单的汽车动画。我想我在基本的输入和动作方面大部分都已经完成了,但我只是想看看我是否可以更进一步。

演示:http://jsfiddle.net/mpxML/20/ (使用箭头键)

我加载了一张图片,您还可以看到一个黑色方块在移动,即平移点或汽车转向的位置。我想以某种方式创造一种可以在更高速度等下实现的漂移效果。它也可以在它不移动时转动,这是不对的。

无论如何,我只是不知道我需要什么逻辑才能让汽车感觉更半现实。

谢谢

【问题讨论】:

  • 不是一个有用的评论,但只是想说干得好!我把车开出了框架,现在我把它弄丢了哈哈!!
  • 嘿谢谢哈哈。是的,我真的需要一些界限!

标签: jquery html animation canvas


【解决方案1】:

很棒的小演示,喜欢它!我不开车,这是我的想法。我建议您尝试一下,您不必追求现实主义 - 请记住您正在制作游戏,您想追求乐趣 :)

倒车

我会让倒车正常工作,当您倒车时,它不会按照我对传统汽车运动的预期方向转动。

漂流

这将在转弯速度/角度达到一定量时触发。满足这些条件后,您可以执行诸如阻止更多转弯(通过锁定当前方向)并将汽车从该方向倾斜约 30 度,直到未按下加速键的操作

转弯

我不是司机,但我认为当您以较慢的速度行驶时,您的转弯角度会更小,也许可以为此创建一个简单的公式,即速度和转弯量之间的某种关系。

无耻的塞

我必须透露我为 Scirra.com 工作,我们有一些软件 Construct 2 (Download),这是一个用于 HTML5 游戏的 Windows 游戏制作程序,它可能值得你看看(取决于你的目标)!它可以使用 JavaScript 进行扩展,因此您可以编写自己的移动行为并使用其他人,使汽车游戏更加直观和容易(在我们看来,无论如何!)

【讨论】:

  • 嘿,感谢您的反馈 :) 漂流上的优秀 cmet,我会努力工作的!我正在研究转弯圈,我还将检查 Construct 2 :)
【解决方案2】:

要修复转弯,您必须执行以下操作:

car.angle = car.angle - (car.handeling * car.speed/car.topSpeed);

这将防止速度为 0 时转弯并修复反向转弯

要获得漂移效果,您应该将汽车的旋转中心向前移动,并让汽车在不真正转弯的情况下自行旋转

【讨论】:

  • 效果非常好!现在我不动的时候不能转,动的时候我能得到一个紧的转弯圈。但是当我走得很快时,我希望处理效率更低。我正在考虑做(处理/速度)。我希望我能更好地弄清楚它。问题是,一旦你倒车,处理就会混乱等等。>.
  • 如果你要开发一个固定的赛道(没有平移),那么漂移真的很难。几年前我已经搞砸了 2d 赛车,我无法很好地控制漂移。它要么非常微妙,您几乎无法注意到它,要么它很明显并且使处理变得非常困难。
猜你喜欢
  • 2023-02-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多