6

大家好,我是 html5 画布开发的新手,我在选择画布框架时迷失了方向。它们太多了,我不知道该用什么。所以我在这里!我希望您的帮助来选择哪一个更适合我的需要。有我的需求

1)我想要使用矢量图形的框架,我知道canvas不是DOM,我真的不在乎它但我的意思是我想在创建对象后对其进行操作,PaperJS有这个我不知道的功能其他。如果可以使用高级鼠标事件,那就更好了。

2)我想使用图像框架,我将加载图像并用画布动画它们,移动,动画一些颜色......

3)由于我的需要,我希望框架快速(图像动画应该是流畅的)

4) 我希望框架拥有良好的社区,因为我知道我需要一些帮助。

那么你觉得哪一个更适合我呢?如果你能从我的列表中写下每个框架的优势和劣势,请告诉我?

4

1 回答 1

3

HTML5 canvas 环境还是很新鲜的。您可以得到印象,有很多工具已经可用,但它们通常很不成熟。

我的回答将只涵盖您的部分问题,因为我只使用了 KineticJS 和 EaselJS。您可以从阅读此页面上的意见开始(我的是底部的最后一个)。

简短地说 KineticJS 的进入门槛较低。它是一个简单的绘图库,并且对鼠标事件也有一些支持。在我尝试使用它的时候,它几乎无法扩展。我发现很难根据自己的需要进行定制。EaselJS 开始有点困难,但它也更高级。现在它是其他库集的一部分,统称为 CreateJS。那里似乎有很多发展。

  1. Kinetic 和 Easel 都支持鼠标事件。我记不太清了 Kinetic,感应“onMouseOver”在 Easel 上的成本很高。还提到的两个库都允许对象操作。您可以在此处找到 TweenJS 也可用作添加。
  2. Kinetic 和 Easel 再次允许这样做。Easel 还支持精灵 - 为网络游戏开发人员所熟知的“动画图像”。
  3. 我不确定 Kinetic,因为在我放弃它之前我还没有达到我项目的动画部分(库,而不是项目)。使用 Easel 速度很棘手。它实现了一些优化方法,例如对象缓存或 snapToPixel 标志。示例似乎运行得很好。然而,尽管在优化方面付出了很多努力,但对于我使用 Easel 的项目来说,平滑度仍然是一个问题。也许我滥用了 API,或者我还没有注意到还有更多优化的地方。
  4. 这两个库都很年轻,但似乎正在积极开发。作者反应灵敏。社区仍然不大,但我猜 CreateJS 作为更完整的游戏创建工具集会发展得更快。

如果要检查这里是我提到的项目。这是一个使用 EaselJS + TweenJS 制作的网页。不过仍然需要一些小的调整。

于 2012-08-07T14:59:00.290 回答