[SignalR 2.0] Unity3D 용 라이브러리 uSignalR

728x90
반응형

 

들어가며

SignalR을 이용해서, 채팅시스템을 구현할 일이 생겼는데요.

그러는 과정에서 Client 에서 동작하는 라이브러리를 검색했었습니다.

 

https://github.com/jenyayel/SignalR.Client.20

 

GitHub - jenyayel/SignalR.Client.20: SignalR protocol 1.2 client for .NET 2.0

SignalR protocol 1.2 client for .NET 2.0. Contribute to jenyayel/SignalR.Client.20 development by creating an account on GitHub.

github.com

 

위 소스가 .NET 2.0 환경에서 동작하는 SignalR 클라이언트 라이브러리 입니다. 

 

하지만, 이걸 그대로 Unity3D 에 적용하려면, meta 확장자로 변경해야 하는 과정이 필요하다고 해서, Unity3D 환경으로 포팅된 라이브러리가 있는지 좀더 검색해보기로 했습니다.

 

 


 

Unity3D에서 작동하는 SignalR

그렇게 해서 찾은 라이브러리가 아래에 공유한 uSignalR 입니다. 

uSignalR 라이브러리는 Unity3D 환경에 동작하는 SignalR 2.0 환경의 라이브러리 입니다. 

 

https://github.com/gromchen/uSignalR

 

GitHub - gromchen/uSignalR: SignalR which works in Unity3D

SignalR which works in Unity3D. Contribute to gromchen/uSignalR development by creating an account on GitHub.

github.com

 

 

위 소스를 이용해서 iOS 와 Android 환경에서 SignalR 서버와 통신하는 부분을 구현했고, 

실제 라이브 서비스 중에 있습니다. 

물론 uSignalR 에 몇가지 부족한 점이 있어서 소스를 좀 보완하기는 했습니다만, 

기본적으로 사용하는데에는 큰 문제는 없었습니다. 

 

 


 

 

왜 SignalR Core 를 사용하지 않았나요?

현시점에서는 SignalR Core 를 이용해서 작업하는게 맞습니다. 하지만 바로 적용하지 못했던 이유가 있었는데요.

 

첫번째로 .NET Core 환경은 Unity3D 에서는 아직 동작하지 않습니다.

 

두번째로는 핑계일수 있지만, 시간부족이였어요.

Unity3D 환경에서 동작하려면 .NET Standard 로 변경했어야 했는데, 이부분에서 R&D를 지속할 만한 시간이 부족했습니다. 

 

현 시점에서 SignalR 2.0 환경으로 게임에서 동작하는 것을 확인했으니, SignalR Core 로도 방법을 찾아보려고 합니다.^^

 

 

 

 

 

728x90