Unity(光子/网络):如何在本地玩家所在的同一位置实例化对象?

时间:2017-07-11 09:57:48

标签: unity3d

我正试图在我的播放器下实例化2d子弹:

using UnityEngine;
using System.IO;

public class Network_Shoot : Photon.MonoBehaviour {

    public void OnClick_Shoot()
    {
        if (photonView.isMine) 
        {
            PhotonNetwork.Instantiate (Path.Combine ("prefabs", "Network Bullet"), transform.position, transform.rotation, 0);
        }
    }

}

在检查器中,我将OnClick() - 事件设置为播放器预制件中触发此方法的脚本。方法被调用,但子弹始终在位置0, 0, 0处实例化,旋转0, 0, 0。如果我做

void Update()
{
    Debug.Log(transform.position);
}

我在我的控制台中获得了真实的位置。是什么造成的?

1 个答案:

答案 0 :(得分:1)

首先,所有网络实例化的预制件都需要在Resources文件夹中。其次,该项目需要附加光子视图,因此您可以同步它的位置和旋转。