• 티스토리 홈
  • 프로필사진
    SiJun-Park
  • 방명록
  • 공지사항
  • 태그
  • 블로그 관리
  • 글 작성
SiJun-Park
  • 프로필사진
    SiJun-Park
    • 분류 전체보기 (121)
      • Unity (80)
        • RPG Project (39)
        • FPS Project (30)
        • 기타 - 개발 (11)
      • 개발 (35)
        • 임베디드 소프트웨어 (7)
        • 컴파일러 (6)
        • 기계학습 (8)
        • 보안 (8)
        • 그래픽스 (2)
        • 그 외 (4)
      • 코딩문제 (5)
  • 방문자 수
    • 전체:
    • 오늘:
    • 어제:
  • 최근 댓글
      등록된 댓글이 없습니다.
    • 최근 공지
        등록된 공지가 없습니다.
      # Home
      # 공지사항
      #
      # 태그
      # 검색결과
      # 방명록
      • Playfab 닉네임 동기화 문제
        2025년 07월 04일
        • SiJun-Park
        • 작성자
        • 2025.07.04.:07

        포톤을 공부하다 닉네임이 자꾸 마지막으로 회원 가입한 유저 기준으로 닉네임이 설정이 되어서

         

        뭐가 문제일까 고민을 많이 해보았습니다.

         

        빠르게 찾은 결과부터 말씀드리면 "DisplayName"을 사용 하여야 합니다.

         

                PhotonNetwork.NickName = nicknameInpuField.text;
                PlayerPrefs.SetString("NickName", PhotonNetwork.NickName);
                PlayerPrefs.Save();
                var request = new RegisterPlayFabUserRequest
                {
                    Email = emailInputField.text,
                    Password = passwordInputField.text,
                    Username = nicknameInpuField.text,
                    DisplayName = nicknameInpuField.text
                };

         

        그래서 회원가입 닉네임을 설정할 때 DisplayName을 저장해줍니다.

         

            public void Success(LoginResult loginResult)
            {
                PhotonNetwork.AutomaticallySyncScene = false;
                PhotonNetwork.GameVersion = "1.0f";
        
                var request = new GetAccountInfoRequest();
                PlayFabClientAPI.GetAccountInfo(request, GetInformationSuccess, GetInformationFail);
        
            }
        
            private void GetInformationSuccess(GetAccountInfoResult result)
            {
                string nikcname = result.AccountInfo.TitleInfo.DisplayName;
                if (string.IsNullOrEmpty(nikcname)) PhotonNetwork.LoadLevel("Login Scene"); // ERR
                else
                {
                    PhotonNetwork.NickName = nikcname;
                    PhotonNetwork.LoadLevel("Lobby Scene");
                }
            }
        
            private void GetInformationFail(PlayFabError error){
                Debug.LogError("GetAccountInfo 실패: " + error.GenerateErrorReport());
                PhotonNetwork.LoadLevel("Login Scene"); // 실패 시 로그인 화면으로
            }

         

        이제 로그인에 성공하게 된다면 request를 보내서 DisplayName을 불러와서 Null이거나 공백이 아니라면 Login Scene으로 이동해주고

         

        그게 아니라면 알맞게 설정을 해주면 됩니다.

         

         

        'Unity > 기타 - 개발' 카테고리의 다른 글

        코드 파일 클릭 시 sin 연동 안됨 문제  (0) 2025.04.28
        flood-fill algorithm을 활용한 미로맵 만들기 - 2  (0) 2025.03.28
        flood-fill algorithm을 활용한 미로맵 만들기.  (0) 2025.03.26
        The Fisher-Yates Shuffle [ 셔플 알고리즘 ]  (0) 2025.03.23
        베지어 곡선(Bezier Curve)을 활용한 미사일 발사  (0) 2025.03.22
        다음글
        다음 글이 없습니다.
        이전글
        이전 글이 없습니다.
        댓글
      조회된 결과가 없습니다.
      스킨 업데이트 안내
      현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
      ("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)
      목차
      표시할 목차가 없습니다.
        • 안녕하세요
        • 감사해요
        • 잘있어요

        티스토리툴바