버그 해결을 위한 모든 질문을 던져
0 votes
243 views
안녕하세요 선배님들, 지금 포톤으로로 개발중입니다.

플레이어가 방에 입장 후 큐브 오브젝트에 가까이가서 들기 버튼을 누르면 큐브가 위로 올라가서 플레이어를 따라 다니는 구성인대요

플레이어A(마스터클라이언트O)가 큐브를 들면 플레이어B(마스터클라이언트X) 화면에서는 큐브를 들고있는 액션이 나오는대

플레이어B(마스터클라이언트X)가 큐브를 들면 플레이어A(마스터클라이언트O) 화면에서는 큐브를 들고있는 액션이 나오지 않고

위치값도 동기화가 되지 않는거 같습니다. 큐브를 내려 놓으면 제자리로 훅 날라가 버립니다 ㅜㅜ.

플레이어 A,B,큐브 모두 포톤뷰와 포톤 트랜스폼뷰가 달려있는 상태이구요.

코드입니다 살려주세요 ㅜㅜ

 void Update()
    {

        if (pv.IsMine)
        {

            if (tagIn)
            {
            
                RayItem();
              
            }
     

            if (isTagItem)
            {
               

                Item.transform.position = _ItemCtr.ItemPos02.transform.position;
                Item.transform.rotation = Quaternion.Euler(_ItemCtr.player.transform.rotation.x,                    _ItemCtr.player.transform.rotation.y, _ItemCtr.player.transform.rotation.z);
                GamRay.transform.localRotation = Quaternion.Euler(-90, 0, 0);
                _GameManager.playerClone222.GetComponent<Animator>().Play("PickUp");
            }

          

        }

    }

 

 

 public void RayItem()
    {
        Debug.DrawRay(this.gameObject.transform.position, this.gameObject.transform.forward * 15, Color.red, 10f);
        if (Physics.Raycast(this.gameObject.transform.position, this.gameObject.transform.forward, out hit, distance))
        {

            if (hit.collider.tag == "Item")
            {
                tagIn = false;

               isItem = true;

                if (isPickUp == true)
                {

                    pv.RPC("ItemRayCastPhoton", RpcTarget.All);

                 

                }
            }

            else
            {
              
                isItem = false;
                Item = null;
                tagIn = true;
            }
        }

    }

    [PunRPC]
    public void ItemRayCastPhoton()
    {
  
        Item = hit.collider.gameObject;

        isItem = false;

        isTagItem = true;
     }

 

포톤 트랜스폼뷰가 달려있으면 위치값과 회전값은 동기화가 되는걸로 알고있었는대 뭐가 문제인지 잘 모르겠습니다.
asked (6 point) , 243 views

1 답변

0 votes
자답입니다 ㅜㅜ Item 오브젝트 소유권이 마스터클라이언트에게 있어서 마스터클라이언트 Item 트랜스폼 기준으로 동기화 되서 그랬나봐요 item을 집었을때 소유권을 받아 오니깐 잘 돌아갑니다!
answered (6 point)

버그 해결을 위해 도움을 구하고, 도움을 주세요. 우리는 그렇게 발전합니다.

throw bug 는 프로그래밍에 대한 전분야를 다룹니다. 질문,논의거리,팁,정보공유 모든 것이 가능합니다. 프로그래밍과 관련이 없는 내용은 환영받지 못합니다.

620 질문
784 answers
748 댓글
118,442 users