-1

我正在尝试制作一个图形化的点击式冒险应用程序,它可以作为移动应用程序下载,也可以在浏览器中本地运行。这将是我的交互设计学位的顶峰项目,我有大约两年的时间来完成它。我计划在此过程中学到很多东西,但我不知道从哪里开始。

我一直在研究 Cocos2dx 和 Marmalade SDK 之类的东西,但我试图找出适合我想做的事情。归根结底,这个项目将是一个半交互式的故事,其主要目标是展示我的艺术作品和界面设计。那么我需要一个游戏引擎,还是更简单的东西会更好?

我一直在阅读一些人使用 HTML5 和 Javascript 进行应用程序开发,这将使我具有跨平台兼容性,但是我在使用它的一些网站上看到的性能问题让我担心用户体验会出现故障。去年左右我也一直在学习 C++,所以如果有办法让我的代码在线托管并在浏览器中运行,我可以使用它。

我已经尝试在这里进行研究,并且发现了很多很好的信息,但是我的项目有一些特定的需求。任何想法或建议将不胜感激。

编辑:有一个名为 DisneyLand Explorer 的迪士尼应用程序,它与我想做的事情有类似的互动感觉。 http://itunes.apple.com/us/app/disneyland-explorer/id496004846?mt=8

4

2 回答 2

1

如果您不知道从哪里开始,请列出强制性要求与仅满足要求的要求。比如:需要3D渲染,还是2D分层渲染就够了?您是否需要跨平台(即它会帮助您获得更好的成绩)还是仅仅是一个不错的选择?

如果你不知道从哪里开始并且有很多东西要学,我个人的建议是只关注一个平台。跨平台开发是一种时间消耗(特别是对于初学者),只是为了使相同的游戏在不同的设备或浏览器中具有相同的外观和感觉。这也是一种拖累,因为如果你不能使用其他激励因素来激励自己去做这件事,那就不好玩了,比如“好吧,如果我把这个游戏移植到 X 平台,我会再赚一笔可笑的钱”。

哦,是的,你会想要使用游戏引擎。尽管您不应该排除Adventure Game Studio 之类的替代方案。这可能非常适合您的设计目标,特别是因为您的学位是关于交互性的,您可能希望花费大量时间使事物具有交互性,而不是努力应对更多的技术挑战。

从 Disney 的游戏来看,你应该坚持使用 cocos2d、Sparrow Framework 或 Corona SDK 之类的 2D 游戏引擎。Unity 是严重的矫枉过正,它是为知道自己在做什么的专业团队而设计的。如此多的初学者蜂拥而至,部分原因在于他们出色的营销和“照顾一切,只需点击鼠标即可跨平台”的承诺。并非如此,尽管这些工具有很大帮助,但仍然需要大量艰苦的工作,但是如果您需要以不同的方式完成某些事情(这就是他们向上销售昂贵的 Pro 许可证的方式),它们可能同样具有限制性。

一定要查看可用于各种游戏引擎的工具。在您的情况下,我怀疑ArtPig(基于时间线的动画工具)可能会有很大帮助。检查一下,如果你喜欢它,请确保选择支持它的引擎。

至于在不加载的情况下启动动画:只有两种方法。设备/平台的速度足以在播放动画时将纹理数据流入和流出内存。我不会打赌。或者您为每个场景预加载每个动画,这会增加加载时间并且需要相当多的内存,具体取决于动画的复杂性。这可能并非在所有平台上都可行。预计必须在该领域做出妥协。

并了解什么平台通常可以使用多少内存,以及纹理消耗了多少内存(纹理内存不等于图像文件大小)。我看到很多问题,当人们正在做的只是从大约 200 KB 的文件中加载二十个 2048x2048 纹理时,iOS 崩溃了。算算一下,您会惊讶地发现这会消耗大约 200 MB(32 位未压缩)纹理内存。这比大多数 iOS 设备作为可用内存提供给用户的要多。

于 2012-07-14T09:30:02.253 回答
0

我不太了解Cocos2Dx,因为我仍在努力找时间学习它。但是如果你想要Cross-Platform stuff,你真的应该考虑MarmaladeSDK。虽然正如LearnCocos2D's answer所说的那样,做跨平台的东西并不容易,但是用一个代码工作并改变几行代码比用不同的语言编写整个代码更容易。
Marmalade 也有 Cocos2Dx 的扩展,因此您也可以在 Marmalade 中使用 Cocos2Dx 功能。我们也在 marmalade 中创建了 3D 游戏,虽然在某些地方似乎有些限制,但您总是可以设法openGL直接调用函数进行渲染。
就我个人的看法而言,marmalade 是一个非常好的构建游戏的引擎,它的 6.0 版本还支持HTML5应用程序和phonegapapi,虽然我从来没有用过。
然而 Cocos2D 是免费的,而 Marmalade 不是,所以如果预算是你的限制,这个信息会让你决定你的引擎要工作。

于 2012-07-16T12:14:07.523 回答