반응형

포톤을 이용하여 멀티플레이를 구현해 보고싶어 고라니님이 올려주신 40분짜리 포톤PUN2로 게임만들기영상을 보며 따라하던 중 닉네임을 받기위해 Input Field를 사용하는 부분이 있었습니다. 강의 영상에서는 Text를 사용한 Input Field를 사용하는데 유니티 최신버전에서는 Text를 이용하는 Input FIeld는 사라지고 TextMeshPro를 이용한 InputField밖에 없었습니다. 아래 사진과 같이 유니티 최신버전에서는 모든 UI가 Text를 지원하지 않고 TextMeshPro만을 지원하는 것 같습니다. 

별 생각없이 TextMeshPro를 이용한 Input Field를 생성하여 사용하던 중 NetworkManager오브젝트와 스크립트를 생성하고 public으로 오브젝트와 InputField를 초기화 하는과정에서 문제가 발생하였습니다. 강의 영상에서는 NetworkManager 스크립트를 아래와 같이 작성하였습니다..

스크립트를 작성후 NetworkManager 오브젝트에 NetworkManager 스크립트를 넣어준 후 public으로 선언된 NickNameInput, DisconnectPanel, RespawnPanel 을 초기화 시켜주는 과정에서 문제가 발생하였습니다.

Public Input Field 타입으로 선언된 오브젝트를 초기화 해주려는데 고라니님의 영상에서 Input Field 오브젝트는 초기화가 가능했지만 Input Field - TextMeshPro 타입인 제 오브젝트는 초기화가 되지 않았습니다. 전에 TextMeshPro UI관련해서도 비슷한 일이 있어서 조금 만져보니 Input Field 타입으로 선언하는 것이 아니라 아래와 같이

TMP_InputField 타입으로 선언을 해주어야 합니다. TMP_InputField를 쓰기위해 using TMPro; 또한 반드시 작성하여 주셔야합니다.

이와 같이 선언 후 다시 초기화를 해보면

이와 같이 정상적으로 초기화가 가능한 것을 볼 수 있습니다!

 

제가 보던 강의영상은 아래 영상입니다.

https://www.youtube.com/watch?v=9Bn1C9O0hzY 

 

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기