ํฌํค์ ์ฌ์ฉํ๋ ๊ฒ์๊ฐ์๋ฅผ ๋ฃ๊ณ ์๋๋ฐ
์๋ฌด๋๋ ๋ฐ์์๋๊ฐ ์์ฒญ ๋๋ฆฌ๋๋ผ๊ตฌ์.
๊ทธ๋์ ์ฐพ์๋ณด๋, ํฌํค์ 1์ด๋น ํจํท์ 10๋ฒ ๋ณด๋ธ๋ค๊ณ ํ๋๋ผ๊ตฌ์.
์ด๋ง์ด 0.1์ด๋ง๋ค ์ ๋ณด๋ฅผ ๋ณด๋ธ๋ค๋ ๋ง ์ด์์์.
๊ทธ๋์ ํด๊ฒฐ๋ฐฉ๋ฒ์ ์ฐพ์๋ณด๋, ํจ์์ด๋ฆ ์ค์ด๊ธฐ, RPC ํธ์ถ ํ ๋ฐ๋ก ํจํท ๋ณด๋ด๊ธฐ, ๋๋ง์ ํจํท ๋ง๋ค๊ธฐ ๋ฐฉ๋ฒ์ด ์๋๋ผ๊ตฌ์.
๊ทธ ์ค RPCํธ์ถ ํ ๋ฐ๋ก ํจํท ๋ณด๋ด๊ธฐ ๋ฐฉ๋ฒ์ผ๋กย
ํจํท ๋ณด๋ด๋ ์๋๋ฅผ FixedUpdate๋ก ์กฐ์ ํด์ย
๋๋ฌด ์ ๊ฒ ํจํท์ ๋ณด๋ด๋ ๊ฒ์ย ํด๊ฒฐ ํ ์ ์์๊น์?
๋ ํจํท์ ๋๋ฌด ๋ง์ด ๋ณด๋ด๋ฉด, ์๋๊ฐ ๋๋ ค์ง๋ค๊ณ ํ๋๋ผ๊ตฌ์.
https://game-dev.tistory.com/5
์ ๋ํฐ ํฌํค ๋ฐ์ดํฐ ์ ์ก ์๋ ๊ฐ์ ํ๊ธฐ์ ๋ํฐ ํฌํค RPC ์ ์ก ์๋ Photon์ด๋ ๋ฌด๋ฃ๋ก ๋ฉํฐ ๊ฒ์์ ๋ง๋ค ์ ์๊ฒ ์ง์ํด์ฃผ๋ ํ๋ ํผ์ด๋ผ๊ณ ์๊ฐํ์๋ฉด ๋ฉ๋๋ค. Photon์์ ํ ์ ์ ์ ํจ์๋ฅผ ์คํ์ํฌ๋ ์ฌ์ฉํ๋ [PunRPC] ํ๊ทธ์ ๋ํด์ ์์๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค. [PunRPC] ํด๋น ํ๊ทธ๋ RPC๋ผ๋ ํจ์๋ฅผ ํตํด ํธ์ถ์ ํฉ๋๋ค. Photon Network๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ฐ๋ฐํ๋ฉด ๋๋ฆฐ ๋ฐ์์๋์ ๋ํด์ ๋ถ๋ง์ ๊ฐ์ง์๋ ๋ถ๋ค์ด ๋ง์ ๊ป๋๋ค. ์ด๋ฌํ ๋ถ๋ถ์ ๊ฐ์ ํ ์ ์๋ ๋ฐฉ๋ฒ์ ์๊ฐํด๋๋ฆด๋ ค๊ณ ํฉ๋๋ค RPC ํน์ ํจ์๋ฅผ ์์ชฝ์์ ๊ฐ์ด ํธ์ถํ๊ธฐ ์ํด์ RPC๋ผ๋ ํจ์๋ฅผ ์ฌ์ฉํ๊ฒ ๋ฉ๋๋ค. ์ด RPC๋ผ๋ ํจ์๋ฅผ ํธ์ถ ์ ๋ฐ๋ก ํจํท์ ๋ณด๋ด๋ ๋ ์์ด ์๋๋ผ ๋ฒํผ์ ๋ฐ๋ก ๋ด์ ๋๋ค ์ค๋ธ์ ํธ์ ๋ณํ๊ฐ ์์ ๋ ๊ฐ์ด ๋ณด๋ ๋๋ค. [ ์๋ ๊ฐ์ ๋ฐฉ๋ฒ ] ์๋๋ฅผ ..game-dev.tistory.com์ฐพ์๋ณธ ์ธ์ดํธ ์
๋๋ค.
์กฐ์ธ ํ์ ํ์ํฉ๋๋ค.
1์ด๋น 10๋ฒ์ด๋ฉด ๋น ๋ฅธ๋ฐ? ใ ใ
์ด๊ฒ FPS๊ฒ์์ธ๋ฐ ๋ง์ ๋ณด๋ฉด ๋ฐ์ ์์ฒญ ๋๋ฆผ ใ ใ ใ ใ ใ ์ง์ง ๋จผ๊ฐ ํ ๋ฐ์ ๋๋ฆฌ๊ณ , ๋จ์ด์ง๋ ๊ฒ๋ ๋๋ ๋๊ธฐ๋ ๋๋
clientSidePrediction ๊ตฌํํ์? FPS ๊ทธ๋๋ ๋ ์ดํด์ 100ms์ ๋์ฌ๋ ํ ๋งํ๋ ค๋ฉด clientSidePrediction์ํด๋๋ฉด ์ ๋ ์ด๋น 10๋ฒ์น๋ ๋ง๋ ํ๋ฐ์ ๋๋ฆด์๋ฐ์ ์์
์ ํด๋ผ์ด์ธ ์ธก ์์ธก์ด์? ์์ง ๊ฐ์์์๋ ์ ๋์จ ๊ฐ๋ ์ด๋ค์. ๋ง ๋ป์ ๋ณด๋ ๋ค์ ํ๋์ ์์ธกํ๋ ๊ทธ๋ฐ ๊ฑด๊ฐ ๋ด์. ๋ฐ๋ก ๋ง๋ค์ด์ค์ผ ํ๋ ๊ฑด๊ฐ์?
clientsideprediction ์ผ๋ช ์ ๋ ฅ์์ธก๊ณผ lagCompensation ๋๋ค ํด์ผ๋ fps์์๋
https://developer.valvesoftware.com/wiki/Source_Multiplayer_Networking
FPS๊ฐ์ ์ค์๊ฐ ๋ฌผ๋ฆฌ ์ฐ์ฐ ์ด๋ฐ๊ฑฐ ํ์ํ๋ฉด ํฌํค Fusion์ ์ฐ์
์ง๊ธ ๊ฐ์์์๋ PUN2๋ฅผ ์ฌ์ฉํ๊ณ ์๋๋ฐ, ์ฐพ์๋ณด๋ ์ด๋ค ๊ฒ์ ์ธ์ง์ ๋ฐ๋ผ, ์๋ง์ ๋ฒ์ ์ด ๋ค๋ฅด๋ค๋ ๊ฑด ์ฐพ์์ต๋๋ค. ํจ์ ๋ณผํธ ํ ์ฌ์ฉ๋ฐฉ๋ฒ์ ๋ค ๋น์ทํ๊ฐ์?
Fusion์ด LagCompensation๋ ์ง์ํด์ฃผ๊ณ ๋ฑ ์ค์๊ฐ ๋์ ์ด๋ฐ๊ฑฐ์ ๋ง์. ์ ์ฒด์ ์ธ ๊ฐ๋ ์ Pun2๋ ๋น์ทํ๋ฐ ์ข ๋ค๋ฅด๊ธด ํจ.