对于使用 Flex SDK 开发简单游戏,使用 Canvas 对象(与 UIComponent 对象)作为绘图表面会产生什么后果?两者都存在性能问题吗?方法大体上是一样的吗?环顾四周,我发现的大多数示例代码似乎都使用 UIComponent。这只是习惯,还是有原因?
我已经知道一个奇怪的区别 - 我使用以下方法开发了一个简单的乒乓球游戏:
public class MyGameCanvas extends UIComponent
然后决定用Canvas替换UIComponent。这导致线路失败:
addChild(paddle);
花了太多时间搜索后,我终于发现 Canvas 对象需要:
rawChildren.addChild(paddle);
由于对象的继承链,Sprites 的层次要高于 Canvas。
但这似乎并不是选择某一类而不是另一类的理由。 有什么具体原因吗?谢谢。
更新: 好吧,我猜 Canvas 已经过时了,而 UIComponent 已经流行了。我什至尝试使用 Canvas 对象的唯一原因就是名称。我的意思是,它是一个 Canvas - 这不是你应该画画的地方吗? :)
所以出现的第二个问题是关于使用 Flex SDK(我不知道这是否应该是一个全新的问题,或者这里没问题)。
但是,我必须确认一些事情,因为我对 Flex 和各种术语还很陌生。当人们说“Flex SDK”时,我推测是指我不应该在游戏中使用MXML。因为我认为 Flex SDK 提供了生成 .swf 文件的编译器。否则,我将在哪里/如何编译 AS3?
假设情况确实如此,那么我的问题是关于在(简单)游戏中使用 MXML 和 AS3 的适用性。根据我对两者的了解,它们的预期用途似乎是 MXML 用于界面元素,而 AS3 用于其他所有内容。 MXML 的开销有这么严重吗?
约翰·C>
最佳答案
我认为使用flex sdk来开发游戏根本没有意义。 Flex SDK 的设计考虑了应用程序开发,因此您不应该使用它来制作游戏。
您有具体的理由使用它而不是普通的 AS3 项目吗?
关于apache-flex - 弹性游戏 : Using Canvas Versus UIComponent?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1548885/