在Unity中将Unity生成的代码与Objective-C混合使用?

时间:2010-11-24 23:12:15

标签: iphone ipad ios unity3d

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

例如,如果我正在与在Unity中开发游戏的游戏开发人员合作,我是否可以使用他的xCode项目(由Unity生成),并添加我自己使用Objective-C& C编码的界面元素。 Interface Builder等?

从我所看到的情况来看,这是不可能的,因为一切都是通过Unity创造的......但希望我错了......

谢谢!

6 个答案:

答案 0 :(得分:6)

您甚至可以在XCode中使用第三方库,并将它们集成到构建过程中。在摆弄正确的设置后,我写了一篇关于此的博客文章:

iPhone & Unity3D: Integrating 3rd Party Static Libraries in Unity3D Generated XCode Projects

答案 1 :(得分:2)

您应该能够生成Native插件以与Unity代码进行交互。你需要编写一个包装器。详情请见:http://unity3d.com/support/documentation/Manual/Plugins.html

阅读iOS上的部分:)

答案 2 :(得分:2)

我遇到了这个在OSX中使用Unity本机插件的一般指南,这很有用,可能就是你需要寻找答案的地方,正如Zophiel所说

https://blog.reigndesign.com/blog/unity-native-plugins-os-x

答案 3 :(得分:1)

你可以设计一个视图和按钮来触发统一运行或停止,但是使用Obj-C无法控制统一模型,虽然Unity已导入Xcode,它只导入起始码,游戏脚本取决于无法修改的链接库。

答案 4 :(得分:0)

我认为你可以这样做,就像我可能在没有任何改变的情况下使用Objective-C一样。对于Unity的代码生成器,在Classes下保留本机代码。

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

但我希望Unity中的开发人员能够找到一种更好的方式,与Apple的员工通常无缝结合。

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

答案 5 :(得分:0)

可能是的。建议初学者还是中级Devs?可能不是。每次推送构建时都会生成并重新生成Unity项目。现在我相信,如果你在构建时使用Append,它应该保留对Xcode项目的现有更改......但是'should'是那里的操作词。您可能需要实现某种类型的构建系统(如Jeeves),以便在大型项目中尝试执行此操作时将头痛降至最低,在该项目中,您可以从Unity端和Xcode端查看持续的更新流。

现在,如果您正在集成自己文件中的代码并且不重叠或重写Unity生成的代码,那么Append功能实际上适合您,但如果您要删除,更改,或者将代码添加到Unity生成的任何文件中,然后在每次新的Unity重新编译/ Xcode生成之前和之后使用SVN或其他形式的源代码控制和快照。

另外,请查看Unity Asset商店。无论你想在Xcode中尝试什么功能,都可以在Unity上使用C#编写。其他人可能已经征服了你试图解决的问题并将其放入资产商店5美元。

希望有所帮助。