알려진 이슈들

이 페이지에서는 플랫폼에서 발생된 다양한 이슈들을 보여줍니다. 여기에서는 아직 해결하지 못했거나 현재 해결하려는 이슈들에 중점을 두고 있습니다. 특정한 경우 플랫폼에서 사용할 수 없는 버전은 다른 버전 사용을 권고 합니다.

유니티

PUN-FREE 에서 PUN+ 업그레이드

유니티 5 에서 PUN Free 와 PUN+ 는 완전히 동일한 패키지 입니다.이 유니티 버전에서는 모바일에 대한 내보내기 제한이 제거 되었습니다. 100 CCU를 받기 위해 PUN+ 로 업그레이드 할 수 있으나 기술적으로 패키지를 전환할 필요가 없습니다.

유니티4 에서는 몇가지의 예외 사항이 있는데 PUN+ 는 PUN Free 와 동일 합니다. 프로젝트에 PUN Free 가 있는 상태에서 PUN+를 임포트하면 아래와 같은 컴파일 에러가 발생하여 당황 스러울 수 있습니다: System.Net.Sockets 는 Unity iOS Pro 만 지원 합니다.

수동으로 필요한 파일을 복사 할 수 있으나 시작 전에 작업내용을 백업해 주세요!

새로운 프로젝트를 생성하고 PUN+를 임포트 합니다. PUN+와 PUN Free 가 동일한 버전인지 확인 해주세요(PhotonNetwork.versionPUN 이 같은지).

유니티를 닫고 탐색기(맥의 경우 파인더)를 이용하여 기존프로젝트로 PUN+ 파일들을 복사합니다. 기존에 있는 모든 폴더를 "머지"하여 PUN 의 모든 부분을 "덮어쓰기" 또는"교체" 하도록 해주세요.

Assets\Plugins 폴더와 서브폴더 내용을 모두 교체했는지 확인 해주세요. 만약 Photon*.dll 파일이 Assets\Plugins 폴더 내에만 존재하고 있는지 다시한번 확인 해주시기 바랍니다.

업데이트 된 프로젝트를 오픈하고 프로젝트 패널에서 우 클릭하여 "reimport all"을 클릭 하세요.

PUN+가 정상적으로 동작하고 있는지 검증하기 위해서 mobile 로 PUN+프로젝트를 익스포트 할 수 있습니다. 만약 동작하지 않으면 메일로 로그 파일을 보내주시기 바랍니다.

모바일 - 홈 버튼을 누르면 접속 해제 될 수 있습니다

대부분의 모바일 기기에서는 어플리케이션이 백그라운드로 들어 갈 때 모든 접속이 유지 되지 않습니다. 이 규칙에는 예외가 없습니다(예: 애플 개발자 페이지에서 Background Execution을 참고하세요)

약 10초 이내에 게임이 다시 포커스를 얻으면 PUN 은 게임을 계속 진행 하려고 할 것입니다. 10초 이상 백그라운드에 있다면 타임아웃이 걸리게 됩니다. 클라이언트가 이렇게 하는 한편 서버측에서도 타임아웃이 걸릴 수 도 있습니다.

iOS 의 특성상 앱이 즉시 종료되기 때문에 "timeout disconnect" 콜백은 앱이 재 실행될때 알 수 있습니다.

어플리케이션이 백그라운드로 변경될 때와 다시 포커스를 받을 때 iOS에 의해 호출되는 시스템 콜백이 있습니다. 접속해제를 할 때 이러한 콜백 함수들을 이용하시기 바랍니다. 만약 게임 설계가 수초 또는 수분 이내에 다시 돌아왔을때도 작동해야 한다면 다시 연결하여 방에 참가하는 게임 설계를 할 수 도 있습니다.

Windows 8

윈도우즈 8(8.1 일수도 있습니다)에도 알려진 이슈들이 있는데 연결 되었음에도 불구하고 시스템이 새로운 WiFi 네트워크를 검색 한다는 것입니다. 수신 메시지 시간 차가 수신과 핑 스파이크가 있어 실시간 네트워크 게임에 영향을 주게 될 수 있습니다.

이 현상 수정은 시스템 레지스트리의 ScanWhenAssociated 필드 [HKEYLOCALMACHINE\SYSTEM\CurrentControlSet\Control\Class{4d36e972-e325-11ce-bfc1-08002be10318}\0002] 값을
0x00000001 에서 0x00000000 로 변경 합니다.

Windows Phone 8

유니티 4.3.3 과 4.3.4 버전의 버그로 인하여 내보내기가 실패 하면 다음과 같은 메시지가 발생 합니다:

Exception: Method not found: 'System.TypeCode System.Type.GetTypeCode(System.Type)'.”

해결방법은 여기에 설명되어 있습니다: http://tinyurl.com/qfakzjx

Unity 4.2.2 에서는 이상없이 잘 동작하고 4.5 에서도 수정되어있을 것 입니다.

iOS

일부 유니티 4.3.3 과 4.3.4 에서 내보낼 때 수신 room- 과 player-프로퍼티들이 잘못 읽혀질 경우가 있습니다. 어떤 경우에는 프로그램이 메모리 부족 예외로 인하여 죽게 크래시 됩니다.

이러한 경우 AOT 컴파일이 정상적으로 동작하지 않고 해시 테이블이 깨져서 작동 되는 경우가 있습니다. 원인을 정확히 알 수 는 없으나 수정을 위해 Unity 4.x 릴리즈에서 테스트 수행 중입니다.

주의 해야할 점:모든 내보내기가 자동으로 깨지게 되는 것은 아니지만 손상되지 않는 프로젝트도 있습니다.

 기술문서 TOP으로 돌아가기