인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

An Jungmo님의 프로필 이미지
An Jungmo

작성한 질문수

[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버

u8 한글 문자열 관련 질문 드립니다 !

작성

·

610

1

안녕하세요 추후 강의 출시 기다리다가 제가 언리얼과 서버와 연동작업을 공부 중입니다.

 

현재 Protobuf 송/수 신 등 작업처리 중인데

 

ClientPacketHandler.cpp

부분에서 S_LOGIN 패킷에서 

auto player = loginPkt.add_players();

player->set_name(u8"DB에서긁어온이름2");

이부분의 u8 스트링이 언리얼에서는 L"DB??????????????????????????????2" 로 수신이 되는데.. 어떤방식으로 처리해야 할까요 ? 조언 부탁드립니다 !

답변 2

1

An Jungmo님의 프로필 이미지
An Jungmo
질문자

답변 감사합니다 ! 변환하니 잘 됩니다 ! 궁금하실 분들 위해 답변 달아둡니다 !

Protocol::Player p = loginpkt.players(0);

FString PlayerName(UTF8_TO_TCHAR(p.name().c_str()));

1

Rookiss님의 프로필 이미지
Rookiss
지식공유자

언리얼에선 UTF16을 사용하는데
C++서버에선 utf8로 해서 불일치가 일어나는 것으로 보이는데요.
언리얼에서도 패킷을 받은 후 UTF8->UTF16으로 한번 변환한 다음 저장이 필요할 것으로 보입니다.
실제로 이전 프로젝트에서도 utf8로 저장해서 그런 변환 작업을 했던 기억이 있습니다.

An Jungmo님의 프로필 이미지
An Jungmo

작성한 질문수

질문하기