見出し画像

Unity NetCode 入門 (3) - ネットワーク接続

以下の記事を参考にして書いてます。

Network connection

1. ネットワーク接続

「ネットワーク接続」は、「Unity Transport」を利用し、接続は接続エンティティで保持します。接続エンティティは、「NetworkStreamConnectionコンポーネント」を持ちます。

ネットワーク接続完了時には、接続エンティティに「NetworkStreamInGameコンポーネント」を追加し、接続中であることをマークする必要があります。

【注意】「NetworkStreamInGameコンポーネント」が追加される前は、クライアントはコマンド、サーバーはスナップショットを送信しません。

2. ネットワーク切断

「ネットワーク切断」するには、接続エンティティに「NetworkStreamRequestDisconnectコンポーネント」を追加します。ドライバを介した切断はサポートされていません。

切断後にエンティティが破棄される前の1フレームには、「NetworkStreamDisconnectedコンポーネント」が追加されます。

3. 受信バッファと送信バッファ

各接続エンティティは、「コマンド」「RPC」「スナップショット」の3つの受信バッファを持ちます。「RPC」の発信バッファも持ちます。接続エンティティの「CommandTargetComponent」からアクセスできます。

クライアントが「スナップショット」を受信すると、スナップショットの受信バッファで使用できます。「コマンド」と「RPC」も同様に使用できます。

4. クライアントとサーバーの接続

クライアントとサーバーの接続を確立するには、「クライアントワールド」で「Connect」、または「サーバーワールド」で「Listen」を呼び出す必要があります。


この記事が気に入ったらサポートをしてみませんか?