問題タブ [unity3d-unet]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
networking - Unity マルチプレイヤー ゲーム プレイヤーのスポーンが機能しない
こんにちは、私はこの問題に 3 日間取り組んできましたが、何が問題なのかわかりません。エラーメッセージは「SpawnObject for Player(Clone) (UnityEngine.GameObject), NetworkServer is not active. Cannot spawn objects without an active server.」です。クライアントでサーバーに接続してからサーバーを閉じると、サーバーがシャットダウンした可能性があるとクライアントが言うため、サーバーが正常に起動していることはわかっています。ここに私がこれまで持っているコードがあります。 前もって感謝します
c# - UNET ライブラリ サーバーの互換性
最初に、私は Unity3d を初めて使用することを言わなければならないので、親切にしてください :)。Unity3d を使用してプロジェクトを開始しようとしています。Unity ドキュメントから、ゲームのネットワーキング部分については、Unity スタッフが提供する UNET というクラスを使用できることを読みました。いくつかの例を見ましたが、私が持っているものを理解できませんサーバーサイドを実装します。サーバー上でも C# 用に Unity によって作成された特定のライブラリを使用する必要がありますか? node.jsを使う予定だったので.. よろしくお願いします。
c# - UNET: Unity Editor とアプリケーションでの実行の違い
UNET を使用しているときに、次のエラーの違いの原因を突き止めようとしています。
マルチプレイヤー機能をテストするために、プロジェクトをエディタとアプリケーション フォームで同時に実行しています。私がテストしている機能は、発射体の作成/スポーンです。エディターをホスト、アプリケーションをクライアントにすると、ホストだけが発射物を見ることができます。ただし、エディターをクライアントに、アプリケーションをホストにすると、両方のプレイヤーが発射物を見ることができます。
これは奇妙なところです.1つのアプリケーションとエディターではなく、2つのアプリケーションで実行するときにどのような組み合わせを使用しても、ホストだけが発射物を見ることができます.
この特定の組み合わせが機能するのはなぜですか?どのようなセットアップでも機能させるにはどうすればよいですか?
スポーン コードは次のとおりです。それが問題かどうかわからない:
unity3d - Unity3d Multiplayer Unet - 専用サーバーの複数ホスト
私がこのフォーラムに来る前に... 私はユニティとフォーラムでこの質問をしましanswers.unity3d
たが、2か月後...誰も答えがなく、助けたり、私を少し案内したりしません...とにかく....
私の質問は:
私は単純なマルチプレイヤー ゲームに取り組んでいます...
そして、このゲームには専用サーバーのみを使用したいと考えています。しかし、ロビーでは、複数のホストを参加させる方法がわかりません。
つまり、サーバーを実行するとき... 1台のサーバーを実行するか10台のサーバーを実行するかは問題ではありません。
クライアントとして参加したい場合 (u-net Lobby で)、常に 1 つのサーバーが表示されます。そして、私の問題はここにあります。
私が欲しいのは、ゲームの u-net ロビーで、ホストとプレイヤーのリストを持って、そのうちの 1 つを選択し、その部屋に参加することです。
たとえば、サーバーとして 4 つの exe を実行すると、ロビーで 4 つのホストが表示され、クライアントはそのうちの 1 つを選択します。
それで、どうすればこれを行うことができるかを教えてくれる人はいますか?
c# - UNET: コマンド関数 CmdSpawnPlayer がサーバーで呼び出されました
サーバーのコマンドを実行していると、Unity からエラーが発生しました。エラーは次のとおりです。
コマンド関数 CmdSpawnPlayer がサーバーで呼び出されました。
UnityEngine.Debug:LogError(オブジェクト)
NetworkHandler:CallCmdSpawnPlayer(Boolean) NetworkHandler:OnEnable() (Assets/Scripts/Managers/NetworkHandler.cs:69)
UnityEngine.Networking.NetworkIdentity:UNetStaticUpdate()
これにより、私が使用するコード:
Unity のバージョンは 5.3.4f1 を使用しています。
この問題の解決にご協力いただければ幸いです。
スキットルイエ
audio - Unet でネットワーク経由でオーディオ ファイルを同期する
クライアントによって制御されないゲームオブジェクト「プレーン」があります。ホストが特定のボタンをクリックすると、クリップを再生するオーディオ ソースが生成されます。クライアントに音を聞かせたいので、rpc を使ってみましたが、送信できないようです。
エラーが発生し続けます: プレーン (UnityEngine.GameObject) で着信 [ClientRpc:InvokeRpcRpc_SendSoundIDToServer] の動作が見つかりません。サーバーとクライアントには同じ NetworkBehaviour インスタンスが必要です。
1日以上私を夢中にさせてきました。助けていただければ幸いです。
これが私のコードです:
PS: 次の警告も表示されます: ClientRpc [ClientRpc:InvokeRpcRpcPlaySound] handler not found [netId=4]
c# - UNET の UI ボタン
私は、マルチプレイヤー (UNET) 環境で印刷するコマンドを送信する UI ボタンを持つような単純なことに取り組んでいます。これまでに行ったことを考えると、これは簡単だと思いましたが、完全に行き詰まり、混乱しています。
テストするために新しいプロジェクトを作成しましたが、まだこれを機能させることができません。ボタンの onClick を生成してトリガーすることができますが、「権限のないオブジェクトにコマンドを送信しようとしています」というメッセージが表示されます。キャンバスとボタンをプレハブとして使用し、以下のスクリプトをキャンバス プレハブにアタッチしてから、キャンバスをボタンの OnClick プロパティにアタッチしました。
さまざまなテストをすべて行った後、私は「おそらく」木が原因で森が見えないという点に達し、かなりイライラしています。解決策はシンプルで明白であり、解決できるはずですが....
誰かがこれを一度解決するのを手伝ってくれたら本当にありがたいです。
unity3d - Wi-Fi ホットスポット経由で再生した場合の Unity UNET の問題
UNET を使用して LAN マルチプレイヤー ゲームを開発しています。
UDPマルチキャストを使用してサーバーIPをブロードキャストし、他のデバイスがそれをリッスンできます.
一部の UI カスタマイズが必要なため、ネットワーク マネージャーを拡張しました。
サーバーを作成するデバイスはそのIPをブロードキャストでき、他のデバイスは自動的にリスト内のサーバーIP(ゲーム名でもかまいません)を取得します
サーバーを選択すると、クライアントはゲームに参加できます。ユーザーがipを入力する状況を回避しました。
すべてのプレーヤーがルーター経由でプレイするときに問題なく動作するので満足しています。
最悪の部分は、Wifi ホットスポットと他のデバイスが参加するデバイスを作成するときに始まります。
サーバーの作成も失敗します。
誰かが私を助けてくれるなら、私のコードも共有できます。
UNET に問題がありますか?
何か特定のソリューションを使用する必要がありますか?
Wi-Fi ホットスポットでは、通常のルーターとは異なるポートを使用する必要がありますか?
誰かが同様の経験をしたことがある場合は、コードを添付できます。
この場合、ユニティが提供するデフォルトのネットワークマネージャーはどのように機能しましたか? ip と入力すると機能します。
sao ユーザーが ip を記述してサーバー メッセージをリッスンする必要のないスクリプトをいくつか追加しました。
UDP マルチキャスト機能またはポートの問題が原因で、コードが壊れていると思います。
コードを添付しています。
サーバーコード:
クライアントコード: