2015-07-10 118 views
0

我想知道是否可以从源(.h .m)制作Unity iOS插件,以允许类的临时化,而不仅仅是调用静态方法;并指导如何进行。Unity3D iOS插件使用ObjectiveC源来实例化类

我有一个java库已被转换为C#和ObjectiveC的思想,生产Android,Windows和iOS插件的统一,以便以后做一个透明的图层,将在我的场景脚本中使用。从本机代码

回答

0

统一调用C#:

UnitySendMessage("UnityFactory", "CreateObject", "Message"); 

的 “UnityFactory” 可以被实现为工厂创建新的对象。 “消息”可以是json格式的新对象的有效载荷。

调用本机(.mm不.M因为.mm是C/C++兼容)从Unity:

你必须使用一个静态方法,但只有一个。

extern "C" { 
    void NativeSendMessage("NativeFactory", "CreateObject", "Message"); 
} 

是否相同UnitySendMessage ...

如果您需要更多的灵活性,再添加更多的功能到厂。在我的示例中,只有一个“CreateObject”,但如果您不想创建对象,则可以添加RouteToObject函数(但当然,您需要在“按摩”json中使用注册表机制和对象ID)。

iOS GUI覆盖 我不确定这是否与您有关,但您可以覆盖与UIView的统一视图。您必须查找“统一应用程序控制器子类”