私はUNETを使用する際のエラーで、次の違いを引き起こしているかを把握しようとしているとランニングの違い同じ時間にマルチプレイヤー機能をテストすることができます。私がテストしている機能は、発射物生成/産卵です。私がエディタをホストにし、アプリケーションをクライアントにすると、ホストだけがプロジェクタイルを見ることができます。しかし、私が編集者をクライアントに、アプリケーションをホストにすると、両方のプレイヤーが発射物を見ることができます。UNET:ユニティエディタとアプリケーション
これはodderを取得する場所です。アプリケーションとエディタを1つではなく、2つのアプリケーションでどのような組み合わせを使用していても、ホストだけがプロジェクタイルを見ることができます。
この特定の組み合わせはなぜ機能し、どのような設定でも機能させるにはどうすればよいですか?
ここに産卵コードがあります。それが問題であるかどうかわからない:
[Command]
public void CmdFireProjectile(Quaternion cA, Vector3 tF, string pN) {
GameObject projPrefab = Projectile.getProjectilePrefab(pN);
GameObject proj = (GameObject)Instantiate(projPrefab, new Vector3(transform.position.x, transform.position.y + .4f, transform.position.z) + tF, cA);
proj.GetComponent<Projectile>().setSource(this);
NetworkServer.Spawn(proj);
}
"hasAuthority boolチェックを使用し、真と偽の場合はnetworkspawnを使用してください。私はそれが偽であるかどうかにかかわらず、それを使用するのですか?それとも真実を言うことを意味しましたか?また、RpcまたはコマンドでNetworkServer.SpawnWithClientAuthority()を使用しますか? – user2975229
trueとfalseの両方で使用します。コマンド機能でspawnwithclientauthorityを使用していない場合は、基本的にすべての組み合わせを試してください – LumbusterTick