inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버

유니티 연동 #2

19:00 쯤 Player를 찾고 로그를 남기는 테스트에서

해결된 질문

324

RedFlowering

작성한 질문수 10

0

19:00 쯤 Player를 찾고 로그를 남기는 테스트에서

chatPacket.chat를 로그로 남긴 후에

GameObject를 Find할 때 메인 쓰레드에서 사용하라는 예외가 발생합니다.

혹시 제가 잘못 작업했나 해서 올려두신 자료를 받아서 해보아도 똑같이 try catch에서 넘어가질 못하네요

유니티 버전 2021.1.0b1에서 안되서

2019.4.17f1까지 낮춰봤는데도 안됩니다.

무언가를 빠트린거 같은데 찾기가 힘드네요

혹시 조언좀 해주실 수 있을까요 

unity C# network

답변 3

1

RedFlowering

정신없이 보느라 엉뚱한 곳만 쳐다보고 있었던것 같네요..

이런 기본적인 실수를.. ㅜㅜ

막혔을 때 바로 물어볼 수 있는 분이 계신게 얼마나 큰 행운인지 또 한번 느낍니다! ㅎㅎ

늦은 시간에 친절하게 답변 달아주셔서 정말 감사합니다!

1

Rookiss

유니티 쪽에선 패킷을 받으면 바로 실행하는게 아니라,
onRecvCallback을 이용해서 호출하도록 되어 있습니다.
보내주신 코드를  보니 null 체크를 거꾸로 하셔서
받자마자 Sub 쓰레드에서 바로 게임 로직을 실행해서 발생한 문제입니다.

onRecvCallback != null로 바꿔주시면 해결될 것으로 보이네요.

0

Rookiss

네트워크 처리를 하는 Sub 쓰레드에서
유니티 게임 컨텐츠를 사용하면 그렇게 됩니다.
강의에서는 네트워크 패킷을 받더라도
바로 처리하지 않고 메인 쓰레드에서 처리하도록 패킷큐에만 넣어놓고,
추후 메인 쓰레드에서 처리를 합니다.
어떤 부분을 다르게 하신 것인지는 내용만 봐서는 알기 힘듭니다.

더 찾아보시다가 못 찾으시겠으면
rookiss@naver.com으로 통으로 압축 파일을 보내주시면 살펴보겠습니다!

TLS 질문드립니다.

0

39

2

SpinLock과 컨텍스트스위칭에 대해 질문 남겨요.

0

45

2

Unity Span

0

72

2

XML, Dll 차이점

0

103

2

Session 질문입니다

0

78

1

Write Read 커서 키워드

0

72

1

더미 클라이언트 수에 따른 OnDisconnect 발생

0

68

2

네트워크 Send 전담 스레드 배치

0

97

2

UnhandledException 으로 서버 터지는 경우

0

84

2

컨텐츠 단, 엔진 단

0

103

1

질문 있습니다

0

76

2

C# 게임서버 3D MMORPG

0

143

2

유니티6 버전

0

96

2

receive하는 부분과 send하는 부분의 차이

0

132

2

커서의 위치의 중요성

0

102

2

C++ 전혀 모르는데 C# 서버

0

169

2

강의에 질문이 있습니다

0

85

2

멀티스레드 이해도 질문

0

94

1

500 vs 500

0

127

3

OnAcceptHandler 액션 함수

0

60

1

이 정도 서버의 객관적인 수준이 궁금합니다.

0

187

2

36. Serialization #3 에서 string (name) 코드 수정 질문

0

81

2

외부 컴퓨터와의 통신 방법이 궁금합니다

0

104

1

스핀락 질문.

0

109

2