2015-07-10 52 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的統一視圖。您必須查找「統一應用程序控制器子類」