Ubuntu Linuxの下Unity3D呼び出す環境を使用してC ++で記述されたダイナミックリンクライブラリので、

Unity3Dコミュニティは、Linuxのバージョンを支援してきました。Linux環境でのUnity3D開発プログラムするには、まず、ユニティのLinuxバージョンをインストールする必要があります。次のアドレスで:

https://forum.unity3d.com/threads/unity-on-linux-release-notes-and-known-issues.350256/#post-2556301

生産Linuxでのダイナミックリンクライブラリ

Linuxでのダイナミックリンクライブラリは.soの形式です。まず、C ++ファイルを記述する必要があります。簡単にするために、我々は、ルーチンとしてlibtest.cppという名前のファイルを書き込むことができます

#include <stdio.h>
extern "C" int sum(int a, int b)
{
    return a + b;
}
ファイルの現在のパスに、端末を開き、次のコマンドを実行します。

gccの-c -o libtest.o libtest.cpp

gccの-shared -o libtest.so libtest.o

したがって、我々はこのダイナミックリンクライブラリlibtest.so取得します。


ダイナミックリンクライブラリ内の2つのUnity3Dコール

C#でスクリプトファイルを追加します。

[DllImport ("libtest.so", EntryPoint="sum")]
static extern int sum(int a, int b);

最後のステップは、ルートディレクトリunity3Dプロジェクトでlibtest.soファイルを実行します。

Linux環境は、Unity3Dは、現在のディレクトリが含まれているデフォルトの検索ディレクトリではありませんので、この段階では、まだ終わっていません。それは我々が一緒に入れてファイルや実行可能ファイルを実行することができ、プログラムの外にビルドされた場合、それはユニティ・デバッグ・モードである場合、ルートディレクトリにまたは資産/プラグインでプロジェクトファイルので、見つけることができません。デバッグモードでも、ファイルの末尾に2行を追加し、我々は、/ etc /プロファイルを変更する必要があるので、動的ライブラリを呼び出すことができるように開発を容易にするために、我々は、窓のようになることを願ってい

LD_LIBRARY_PATH =。/

輸出LD_LIBRARY_PATH

この方法では、ダイナミックリンクライブラリのユニティ検索を行うことができます。

发布了65 篇原创文章 · 获赞 265 · 访问量 55万+

おすすめ

転載: blog.csdn.net/zzlyw/article/details/60463501