爲Unity寫LLAPI底層插件時,64位編譯出來的插件在編輯器裏使用完全沒有問題,而發佈時需要32位的版本。本以爲只需再編譯一次即可,然而實際上無法運行。
查閱資料後,得知在32位編譯時,需要新建一個.def文件,並規定Unity的接口符號沒有多餘的字符,否則在32位環境極有可能Unity無法調用插件內UnityPluginLoad與Unload兩個函數,由此便發生了錯誤。
只需要添加:
Source.def
LIBRARY
EXPORTS
UnityPluginLoad
UnityPluginUnload
然後重新編譯即可正常使用32位版本。