在iOS中混合Unity生成的代码和Objective-C?

9

是否有可能将iOS代码和界面元素与Unity生成的iOS代码混合使用?

例如,如果我正在与一个使用Unity开发游戏的游戏开发人员合作,是否可以取得他用Unity生成的xCode项目,并添加我自己使用Objective-C和Interface Builder等编写的界面元素?

据我所见,这似乎是不可能的,因为所有东西都是通过Unity创建的……但我希望我是错的。

谢谢!


Cal发现了这个链接http://forum.unity3d.com/threads/68320-Mixing-Unity-with-Objective-C?p=436556#post436556。 - Fattie
2
这不是一项容易的工作,我已经为这个主题写了一篇博客,而且太长了无法在这里发布。你可以使用谷歌翻译阅读它:在Unity3D中使用iPhone原生UI 中国的朋友们可以直接阅读 在Unity3D中使用iPhone原生UI - jtianling
6个回答

6

我几天前因安全原因不得不关闭我的网站。我通过指向archive.org的wayback机器中的先前版本修复了链接。 - Kay
1
你能否把它直接包含在这里,以防再次发生这种情况? - Flexo

2

它确实发生了。该链接中没有“iOS”部分。 - Iulian Onofrei

2

它确实发生了。 - Iulian Onofrei

1
你可以设计一个视图和按钮来触发Unity运行或停止,但是Unity中的模型不能使用Obj-C来控制,尽管Unity有导入到Xcode的功能,但它只会导入启动代码、依赖链接库的游戏脚本,这些都是不能修改的。

0

我认为你可以像我一样使用Objective-C工作而不需要做任何改变。因为Unity的代码生成器会保留Classes下的本地代码。

此外,还有另一种方法可以实现这一点,称为“插件”。

但是我希望Unity的开发人员能够像苹果公司的员工一样找到更好的方式与Xcode无缝结合。

将IB和Unity的集成编辑器结合起来将更好,并且在未来会更受欢迎。


0
可能性是存在的。但对于初学者或中级开发人员来说是否明智?可能不是。每次推送构建时,Unity项目都将被生成和再生成。现在我相信,如果您在构建时使用Append,则它应该会保留对Xcode项目的现有更改...但“应该”是操作词。如果您尝试在一个大型项目中执行此操作,其中预期从Unity和Xcode两侧不断更新流,则可能需要实施某种构建系统,例如Jeeves,以将头痛降至最低。
现在,如果您正在集成其自己文件中且不重叠或重写Unity生成的代码的代码,则附加功能确实会对您起作用,但是如果您要删除、修改或添加任何Unity生成的文件中的代码,则一定要使用SVN或其他形式的源控制,并在每次新的Unity重新编译/Xcode生成之前和之后进行快照。
此外,请查看Unity资产商店。您尝试在Xcode中自行编写的任何功能都可以在Unity的C#上编写。其他人可能已经解决了您尝试解决的问题,并将其放在资产商店出售,价格为$5。
希望这有所帮助。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接