-
유니티 웹 - Unity Play 에서 웹소켓 써보자프로그래밍/개발메모 2026. 1. 31. 13:29728x90반응형

Unity Play 장점
유니티 플레이에서 웹 소켓을 사용할 수 있으면 트레픽 비용을 안내도 되서
크기가 큰 게임도 부담없이 만들 수 있습니다.
되다 안되니
Unity Instance 를 과거에는 제공해줬으나 이젠 안줍니다.
Unity Instance 가 없으면 SendMessage 를 할 수 없습니다.
해결 방법
부분적으론 해결되었지만 아직 완료하진 못했습니다. 안될 수도 있으니 참고만하세요
1. 유니티에서 자바스크립트로는 호출이 가능하다. jslib 파일 사용
2. 유니티에서 함수를 자바스크립트로 전송할 수 있다.
3. 자바스크립트에서 유니티 함수를 받아 호출할 수 있다. (콜백가능)
4. 자바스크립트에서 버퍼를 만들고 유니티로 주소를 보낼 수 있다. (IntPtr 타입)
5. 버퍼를 만들고 해제하지 않으면 메모리 누수가 된다. 해제는 자바스크립트에서 만들었기 때문에 자바스크립트에서 해야한다.
6. 추천하는 방법은 한번에 큰 버버를 만들고 끝날때 까지 지우지 말고 재사용하라는군요
7. 버퍼에 글씨를 쓰면 유니티에서 언제든지 읽을 수 있다.
이 과정들을 차례대로 확인해서 동작한다는 것을 알았습니다.
특히 3번 이 가능합니다.
처음에 RemoveCall 이라는걸 알려주던데 이건 옛날 방식이고 현재는
wasmTable.get 으로 바꼈다고 합니다.
ex) wasmTable.get(t함수주소)(인자값);
추가로 알아낸 편리한 팁
jslib 에 전역변수가 없는데 this 라는건 쓸 수 있습니다.
this 는 웹브라우저의 window 를 의미하는거 같습니다.
window 있으면 뭐든지 호출 할 수있죠
지금은 ...
아직 결과물은 나오지 못했고
재료는 갖추었습니다.
이제 시간있으면 구현해보겠습니다.
반응형