2017-04-13 6 views
0

私たちは私たちの施設用にMMOスタイルの仮想キャンパスを作成していますが、私はUNetの使用に関するベストプラクティスと実装に関するアドバイスが必要です。私は、おそらくサーバービルドのための別のシーンで1つのプロジェクトを使用すべきであることを読んだ後、結論に至りました。だから私はそれを設定し、それが実行され、すぐに専用のサーバーを開始します。ゲームシーンは自動的に接続されますが、プレーヤーがネットワークマネージャーに追加されてもインスタンス化されません。サーバシーンは、UNetネットワークマネージャコンポーネントを持つ空白のシーンに過ぎません。Unity UNet MMOスタイル専用サーバメソッド

より良いユーザーエクスペリエンスのために、ゲームシーンとすべてのユーザー対話がクライアント側で実行され、サーバーを更新してから、サーバーが他のクライアントを更新することが私の見解です。 (これを撃墜しても構いません)。

上記が正しいパスにある場合、サーバーシーンはどのようにゴーストに設定され、実際に情報を処理しないのですか?

オブジェクト全体を同期させると思うので、特定の変数をサーバーに送信するスクリプトを書くことは有益でしょうか?

UNetは、ゲームの完全なインスタンスではなく、クライアントを更新するためにサーバーがちょうどintemediaryとして機能するような種類の機能を許可しますか?

私はがUNETとセットアップネットワーキング、ヘッドレス、専用の、MMOスタイルを作成するための最善の方法で何ですが、私は本当にATが取得しています何だと思いますか?

+0

私は、ゲームサーバーとクライアントをuNet https://github.com/co-chi-tam/Multiplayer_RPGで作成しようとしていました...クールだが遅いと切断が表示されます。クライアント移動、アクション、対話型の他のサーバーで接続し、各クライアントを更新する必要があります。 –

答えて

0

UNETのHLAPI(ハイレベルAPI)をMMOに使用しません。 Network TransformやNetwork Managerのようなコンポーネントを使い分けることはできますが、スコープのプロジェクトに必要な柔軟性はありません。それは可能かもしれませんが、HLAPI全体は、サーバーとクライアントの両方(ホストが実行している1つのシーンに限定されている)の「ホスト」ハイブリッドをサポートするように構築されているように感じられます。

低レベルAPI(LLAPI)をご覧ください。これは、UDPソケットの上にある、シンプルでユニティに最適化されたレイヤーです。 Client - > Serverからメッセージを送信するのはシンプルなフレームワークなので、プレーヤーを移動させたり、シーンの変更を管理するエンジンを構築するのはあなた次第です。しかし、この方法では、サーバーはまったく異なるUnityクライアントメッセージを処理する唯一の目的で使用します。

関連する問題