こんにちは!ユニティネットワーク[UNET]:静的シーンオブジェクトの同期化
私は比較的新しいUnityで、UNETを使って新しいゲームプロジェクトを進めています。私はこの問題で数日間立ち往生しました:Unityで既存の(生成されていない)シーンオブジェクトをどのように同期させることができますか?
"background"という名前のオブジェクトがあります。これはスプライトです。サーバーがマップをロードすると、バックグラウンドの変換スケールが変更されます。私がしたいのは、新しく接続されたクライアントと同期することだけです。
ドキュメントには、オブジェクトにNetworkIndentityコンポーネントとNetworkTransformコンポーネントがある場合は、自動的に行う必要があることが記載されています。しかし、それは私のためには機能しません! ; 40 http://prntscr.com/csxoqd 私は、スケール40とスプライトを持っている:ここでは https://docs.unity3d.com/Manual/UNetSceneObjects.html
を簡素化するプロジェクトです。 その後、OnServerStartでは100に変更します.100 - ホストまたはサーバーでのみ有効です。
using UnityEngine;
using System.Collections;
using UnityEngine.Networking;
public class NewBehaviourScript : NetworkBehaviour
{
// Use this for initialization
public override void OnStartServer()
{
this.transform.localScale = new Vector3(100, 100, 1);
}
// Update is called once per frame
void Update() {
}
}
しかし、クライアント側では何も起こりません。私はNetworkServer.SpawnObjects();
をこのメソッドの内側に追加しようとしました。動作しません。
提案がありますか?
[OK]を、多くの感謝。 私はそれを信じることができませんでした=) これで、[SyncVar]回避策を使用します。 – An147