クライアントサーバーアーキテクチャのブートストラップセットアップ
Unity クライアントと .Net Core サーバーを使用したマルチプレイヤー セットアップ。このアプリケーションは非常に単純なチャット サーバーであり、クライアントがサーバーと通信する方法、およびその逆の方法を示します。このリポジトリは、小規模な技術デモであることに加えて、Android および iOS 用に ENet をコンパイルする方法を説明し、プロジェクトを開始するためにこれらのプラットフォーム用に構築されたライブラリを提供します。
クライアントプラットフォームのサポート | 32ビット | 64ビット | アーム |
---|---|---|---|
アンドロイド | ✔️ | ✔️ | ➖ |
iOS | ➖ | ✔️ | ➖ |
窓 | ✔️ | ||
MacOS | ✔️ | ✔️ | |
Linux | ✔️ |
サーバー アプリケーションは .Net Core で構築されているため、Windows、Mac、または Linux 上で実行できます。
リリース セクションから適切なビルドを取得し、コマンド ラインから実行します。あるいは、選択した IDE で ENetServer ソリューションを開いて実行することもできます。
サーバーはポート 3333 をリッスンし、任意のキーを押すと中止できます。
リリース ページから Android または Windows 用のビルドを取得するか、Unity でプロジェクトを開いて実行します (サーバーが起動していることを確認してください)。サーバーの IP (同じマシン上にある場合は 127.0.0.1) を確認し、[接続] をクリックします。
正常に接続されたら、送信ボタンの横のボックスにメッセージを入力できます。メッセージは、その時点でオンラインになっている他のすべてのクライアントにブロードキャストされます。
最も簡単な方法は、リリース ページからビルドされたライブラリを取得することです。
自分でビルドしたい場合 (または新しい ENet バージョンの場合)、以下の手順を参照してください。
path
環境変数に追加します (例: C:/Data/SDKs/android-ndk-r19c/build
[email protected]:nxrighthere/ENet-CSharp.git
のクローンを作成しますENet-CSharp/Source/Native
に移動します。ndk-build
実行します。arm64-v8a
、 armeabi-v7a
、およびx86
フォルダーを Unity プロジェクトのAssets/Enet/Plugins/Android/
にコピーします。arm64-v8a
ARM64 に、 armeabi-v7a
ARMv7 に、 x86
を x86 に設定します。[email protected]:nxrighthere/ENet-CSharp.git
のクローンを作成しますENet-CSharp/Source/Native
に移動します。sh build-ios.sh
を実行します。libenet.a
Unity プロジェクトのAssets/Enet/Plugins/iOS/libenet.a
にコピーします。libenet.a
iOS に設定するENet-CSharp/Source/Native
に移動します。build
というフォルダーを作成し、そこでターミナルを開きますcmake .. -DENET_SHARED=true
を実行します。これにより、ビルド フォルダーに Visual Studio プロジェクトが埋め込まれます。ENet-CSharp/Source/Native/build/MinSizeRel/enet.dll
から Unity プロジェクトのAssets/Enet/Plugins/x86_64
にコピーします。enet.dll
設定ENet-CSharp/Source/Native
に移動します。build
という名前のフォルダーを作成しますENet-CSharp/Source/Native/build/Release/libenet.dylib
にあります。lipo -create ./libenet.bundle ./libenet.dylib -output merged/libenet.dylib
を通じて、この ARM ビルドを x64 ビルドとマージしました。マサチューセッツ工科大学