ํด๋ผ์์ ๋ฐฉํฅํค ์ ๋ ฅ์ ์ ๋ ฅํ ๋ฐฉํฅ๋๋ก ์๊ฐ๋๋ฐ
์๋ฒ์์๋ ์๊ธฐ์๋ฆฌ์์ ๊ฐ๋งํ ์์
์ด๊ฒ ์ง๊ธ ์ ํ๋ ์ปค์์ ์ปดํฌ๋ํธ๋ค์
๊ทธ๋ฆฌ๊ณ ํ๋ ์ปค์์ ๋ค์ด์๋ ์คํฌ๋ฆฝํธ์ธ๋ฐ ์์ฒญ ๊ธธ์ง๋ง 1~8mech๊น์ง ๊ฐ์ ๋ด์ฉ์ด๋ผ๊ณ ๋ณด๋ฉด๋จ
์ง๊ธ๊น์ง ์์ ํ๋ฉด์ ํฌํค๋ทฐ๋ ํฌํคํธ๋์คํผ ๋ทฐ๋ ํญ์ ๋ถ์ฌ๋ง๊ณ
ismine true, false๊ฐ์๊ฑฐ ๋ค ์๋ํด๋ด ๊ทธ์ธ์๋ ๋ฌด์จ ๋ผ์ด์ฆ์ธ๊ฐ? ๊ทธ๊ฑฐ๋ RPC๋ ์๋ํด๋ด
ํ์ง๋ง ์ ๋ถ๋ค ์คํจ
์ฝ๋๋ ๊ธธ์ด์ ธ์ ๋์ด์ ์ฌ๋ฆ
๋๋ฌด ๊ธธ์ด์ ์ฝ์ด๋ณด๋์ค ๊ทผ๋ฐ ๋ ์ค๋ธ์ ํธ๋ฅผ ์์ฑ์ํค๋์ค ์์๋๋ฐ ์ปค์๊ฐ ๋ฃธ์ค๋ธ์ ํธ๋ค,
์กฐ๊ธ๋ง ๋ดฃ๋๋ฐ ์์์ง์ผ๋งํ๋ฐ? ํผ๋์ ์นด์ค์ค์ . ์ฐ์ ์ ๋ฐ์ดํธ๋ฌธ ๋ถํฐ ์์ํ๋ฉด ๋ฐฉ์ฅ์ด ์๋์ ๊ฐ RPC๋ฅผ ์จ์ currentRPC๋ฅผ ํธ์ถํจ. ๊ทธ๋ผ ๋ฐฉ์ฅํ๊ณ ,ํด๋ผ์ด์ธํธ๊ฐ ์ current๋ฅผ ํธ์ถํ๊ฒ์ง. ํธ์ถํ๋ฉด ํด๋ผ์ด์ธํธ๋ ์ ๋ฐ์ดํธ๋ฅผํ๊ฒ์ง. ๊ทผ๋ฐ์๋ฏธ์๋๋ฏ?, ๊ทธ๋ฆฌ๊ณ ๋ฐฉ์ฅํํ ๋ ํธ์ถํ๋๋ฐ ๋ฐฉ์ฅ ismaster==false๋๊ฐ ํธ์ถ๋ ์ํ ๊ฑฐ๊ณ ํธ์ถํด๋ ํ์ฌ ๋ฐฉ์ฅํํ ๋ณด์ฌ์ ธ์๋ ์บ๋ฆญ์์น=๋ง์ฐ์ค์ปค์์์น๋ก ๋ฐ๋๋๊ฐ(๊ทธ๋๋ก) ๋ณํ๊ฑด์์ง
RPC๋ ๋ฐฉ์ฅ๋ง ์จ์ผํ๋๊ฑฐ์??
๊ทธ๋ฆฌ๊ณ ์์ง์ด๋๊ฑด ์ปค์ ์คํฌ๋ฆฝํธ์์๋ ์์ง์ด๋๋ฐ photonTranformView์ปดํฌ๋ํธ์์๋ ๊ฐ์ด ์์ง์ฌ๋ฒ๋ฆฌ๋ฉด .. ํผ๋์ photontranform์ ๋นผ๋ฒ๋ฆฌ์ RPC๋ ํธ์ถ์ ์ ๋๋ก๋๋์ง ๋ชจ๋ฅด๊ฒ ์ public์ด ์๋๋ฉด ์ฐพ์์์๋ค๊ณ ๋ฐํ ๋ฐ?? ๊ทธ๋ฆฌ๊ณ RPC๋ All์ผ๋ก๋ฐ๊พธ์ , Allbufferd์ฐ๋ฉด ๊ณ์ ๋ฐ์ดํฐ์์ด๋๊ฑฐ๋ผ ๋ฐ์ดํฐํฐ์ง๋ฏ
์คํฌ๋ฆฝํธ์ RPC๋ค ์ง์๋ฒ๋ฆฌ๋์?
rpc๋ ๋ง๊ทธ๋๋ก ์๊ฒฉํธ์ถ์, ๋๊ตฌ๋ ์จ๋๋จ , ismine์ด false์ธ์ ๊ฐ ์จ๋ ๋๊ณ ๊ทธ๋ฆฌ๊ณ ์ค์ํ๊ฒ ํด๋ผ์ด์ธํธ์์ ๋ A์์น๋ก ๋ฐ๋์๋ค๋๊ฑธ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด์ค์ผ๋๋๋ฐ ์ง๊ธ currentCharacter RPC์ ๋ถ๋ถ์๋ณด๋ฉด ๊ณต๋ฐฑ์ด์์, ๋ฐ์ดํฐ๊ฐ ์๋ฌด๊ฒ๋์๋ณด๋ด๋๋ฐ ํ๋๊ฒ๋์์ง ๋น์ฐํ. currentCHRPC(vector3 pos)๋ก ๋ฐ๊พธ๊ณ photonview.RPC("๊ทธ๋๋ก", rpctarget.all, character.position)์ผ๋ก ๋ฐ์ดํฐ๋ฅผ์ค์ผ์ง
ใฑใ ใฑใ ์ค๋์ ๋๋ฌด ๋ฆ์ด์ ๋ด์ผ ํด๋ณผ๊ฒ์ ์๋ ค์ฃผ์ ์ ใฑใ ใฑใ
currentCHRPC(vector3 pos)๋ก ๋ฐ๊พธ๊ณ photonview.RPC("๊ทธ๋๋ก", rpctarget.all, character.position) ์ด๋ถ๋ถ์ด ์ด๋์ง ๋ชจ๋ฅด๊ฒ ์ด์ฉ
ํฌํค๋ฌธ์ํ๋ฒ ์ฝ๋๊ฒ ์ ค์ข๊ธดํ๋ฐ.. ํ์ฌ๋ก์ฌ ๊ทธ๋ฅ RPC๋ค ์ง์๋ฒ๋ฆฌ๊ณ , photonTransformView๋จ๊ธฐ๊ณ , photonview์ปดํฌ๋ํธ์ onwership tarnfer์ takeover ์ผ๋ก๋ฐ๊พธ๊ณ ํด๋ผ์ด์ธํธ ๊ฐ ์ ์ํ๋ฉด ํด๋ผ์ด์ธํธ์ชฝ์์ bluercusor.cs ์์ startํจ์์์ photonView.TransferOwnership(PhotonNetwork.LocalPlayer.ActorNumber); ์ ํธ์ถ ํ์ , bluecusror ismine์ด true์ธ๊ฑฐ ๋๋ฉด ์๋ก ํ์ธ ใฑใฑ
currentCharacterRPC() > currentCharacterRPC(Vector3 pos) ๋ก ๋ฐ๊ฟ๋ณด๊ธด ํ๋๋ฐ Vector3์ ๋นจ๊ฐ์ค ๋จ๊ณ photonview.RPC("๊ทธ๋๋ก", rpctarget.all, character.position) ์ด๊ฒ๋ ๋นจ๊ฐ ์ค ๋ ์
vector3์ ๋นจ๊ฐ์ค๋ฌ๊ฑฐ๋ ์ด์ํจ using์ unityengine์์ด๋ฏ?