前同事(艺术家)和我自己(程序员)目前正在我们的空闲时间一起开发一款小游戏。因为他根本不想学习如何使用XCode,所以除了制作他自己的版本(我不怪他,他是一个伟大的艺术家,但对技术的东西只有很少的理解),这就是我们如何工作到目前为止:
大部分时间都可以。但是现在我们正在忙着调整内容和游戏机制。在这个开发阶段,我们的工作流程只是缓慢和“断开”。每当他正在处理艺术作品时,他都必须等待我制作一个能够看到实际情境中反映的变化的构建。由于我们并不总是在同一时间工作,这有时意味着他将不得不等待几天 - 完全不满意。
所以,我想知道的......:在不需要重建游戏的情况下,允许他更改内容的最佳方法是什么?
我知道编译后无法更改iOS应用包的内容。所以这就是我到目前为止的想法:
你们觉得怎么样?在我们的案例中,是否有更好,更舒适的方式来实现顺畅的协作?我错过了什么吗?
非常感谢!!
修改 目前,我没有任何计划教我的艺术家如何制作他自己的版本。只要你不认识他,你就可以认真考虑这个选择。不过,他是一位伟大的艺术家。
所以这个问题归结为:
如何在构建iPhone应用程序后修改文件/获取新文件 - 尽可能轻松,而且无需重建应用程序?
顺便说一下,这只需要在开发过程中工作,所以欢迎使用脏方法。
答案 0 :(得分:10)
在一些WWDC 2010视频中,Apple讨论了这个问题。他们建议从网上加载艺术作品并以编程方式将其应用于UIKit元素或OpenGL上下文。
这很复杂,但是这是一个很好的方法,因为那样你就不会对你的二进制文件做任何修改,然后你的艺术家可以自由地工作,将艺术品上传到服务器而你就是金。
我建议使用一个好的HTTP库,比如ASIHTTPRequest,以便更轻松地处理这些请求。
答案 1 :(得分:2)
使用Web服务器/保管箱选项。您可以通过继承或扩展UIImage并在整个应用程序中使用子类来实现此目的。
答案 2 :(得分:1)
越狱你的iPhone,然后你可以使用Cyberduck进入设备。这样您就可以导航到应用程序的Resources文件夹(或)App的文档文件夹,并根据需要更改文件。
您必须确保文件夹权限正确,否则您需要更改它们。 同样在您的游戏中,在第一次运行时,请确保将所有资源复制到App的文档文件夹中。
答案 3 :(得分:0)
我会说你的第一个选择可能是最好的选择。您说明了通过iTunes传输大量文件的问题。为了解决这个问题,我将采取以下措施:
创建一个应用程序来创建“包”文件。它可以采用数据文件夹并以下列格式将其保存在单个文件中:
int - length of name string
char[] - filename
int - length of data chunk
char[] - data chunk
对文件夹中的每个文件执行此操作,您将留下一个图像文件。通过iTunes复制,让你的游戏看到同一个文件夹。
所以现在他的工作流程如下:1)编辑艺术2)运行资产编译器3)将资产文件复制到设备4)加载游戏
我希望这会有所帮助。
答案 4 :(得分:0)
您也可以这样做:
它也适用于.app包中的某个文件,但我没有找到任何合适的应用程序从那里尝试。 无论如何,如果你想让你的艺术家几乎无忧无虑,你可能想把所有东西放在一个Documents子文件夹中:))
修改
我只是尝试将某些内容编辑到.app文件夹中并且工作正常,因此如果您使用iPhone Explorer替换图像,则甚至无需更改代码。
如果您使用的是PNG,请记住禁用PNG优化。查看here以获取解释(搜索“PNG:”)
祝你好运:)答案 5 :(得分:-1)
我想说设置一个CVS存储库。当您对所拥有的内容感到满意时,您可以提交代码。他可以更新他的代码并根据需要更改图像。当他开心的时候,他可以提交他的更改,这样你也可以获得最新的图片(只要他没有弄乱文件,就应该没问题。)
教他如何更新图像,如何部署到设备,如何提交到存储库,它应该顺利进行(虽然我认为会有一些问题)。