質問: new RemoteEvent(); } //-------------------------------------------------------------- // クライアント側処理. [ClientRpc] void RpcFire( int _id ) { if ( remotePlayerListner != null ) remotePlayerListner.Invoke( _id ); Debug.Log( "クライアントだよ,ここまでは来てる" ); } //-------------------------------------------------------------- // リモートプレイを送信. // サーバから呼び出される. public void remotePlay( int _id ) { Debug.Log( "RPC呼び出しメソッド入った" ); if ( !isServer ) { Debug.Log( "サーバーではないのでRPC呼びだせない" ); return; } else { Debug.Log( "サーバーなのでRPC呼び出しできる." ); RpcFire( _id ); Debug.Log( "RPC呼び出した,クライアントで確認せよ" ); } } //-------------------------------------------------------------- // リモートクライアント側がマネージャにリモートメソッドを登録. // 重複しないように同一のものがある場合は削除. public void setClientRemoteMethod( UnityAction< int > _act ) { if ( remotePlayerListner != null ) { remotePlayerListner.RemoveListener( _act ); Debug.Log( "重複していたので削除." ); } remotePlayerListner.AddListener( _act ); Debug.Log( "リモート関数登録. 登録数 : " + remotePlayerListner.GetPersistentEventCount().ToString() ); } } } ``` よろしくお願いします。
回答: サーバー、クライアント側両方ともNetworkManagerを継承していたのですが仮想関数のOnClientConnect,OnServerConnect等のイベントをオーバーライドして現在の状態を確認する処理を入れていたのですが肝心のNetworkServer.SetClientReady()等を呼び出していなかったのが原因でした お騒がせしました