해당 내용정리는 Nexon에서 진행하는 Nexon Developers Conference에 나온 영상들을 참고하였습니다
<순서>
게임 플랫폼이 무엇인지 아시나요?
고속 개발과 안정성을 동시에 잡은 내장형 Node.js
어떻게 만들어져 있을까?
라이브에 사용된 후기
<게임 플랫폼이 무엇인지 아시나요?>
게임 플랫폿은 로켓엔진과 같다
본체 = 게임/컨텐츠
목표에 도달하기 위한 강력한 서포터 = 플랫폼
주제 : TOY SDK Interface 내부에서 동작하고 있는 내장된 Node.js 기능
<고속 개발과 안정성을 동시에 잡은 내장형 Node.js>
Game Process에서 자바스크립트 명령을 호출하면 거기에 대한 응답을 받을 수 있으면 얼마나 좋을까? or 빨리 만들 수 있지 않을까?와 같은 아이디어를 통해 구현하게 됨
내부 스레드에서 자바스크립트의 엔진을 통째로 내장시키는 작업을 통해 게임 프로세스에서 외부 프로세스와 통신하지 않고 원하는 상황에 자바스크립트 파일을 실행하고, 거기에 대한 응답을 받거나 피드백을 주는 작업들을 실행할 수 있게 됨
<어떻게 만들어져 있을까?>
Nost.js에 있는 외부 모듈 호출 인터페이스 WASM, N-API를 일부 변경 재사용
C++, JAVA, Go 등 다양한 모듈을 Node.js에서 사용 가능
게임하고 Node.js는 IPC(프로세스 간 통신)라는 큰 인터페이스로 동작함
IPC는 기존의 TCP 통신과 같은 연결지향성으로 패킷을 주고 받기 때문에, 똑같이 토크나이징 과정을 거치게 됨
RUST를 통해 C++로 놓치기 쉬운 메모리/스레드 접근 안정성을 개발 환경 차원에서 확보
<라이브에 사용된 후기>
좋은 점들
1. JS/TS 개발자가 바로 투입되서 개발이 가능
2. 인증-결제 모듈도 만들어 봤는데 잘 구동됨
3. 호환성이 엄청 좋음
4. 래퍼런스도 엄청 많음
5. SDK 개발기간이 매우 단축됨
6. 신규 게임 엔진과 게임이 연동하는 시간이 1주일 안에 완료된 적도 있음
걱정했으나 생각보다 문제가 없던 점
1. Nojde.js가 소수의 사용자 컴퓨터에서 구동되지 않는 경우가... 없음
2. 예기치 못한 메모리 같은 문제가 게임에 전파... 되지 않음
3. 기존의 C++ SDK를 JS로 재구현... 할 필요가 없음
4. ios. android. arm9. x86 mobile... Node.js 구현체 다 있어서 빌드하면 됨
'강좌 > NDC' 카테고리의 다른 글
쿠키런: 킹덤, 총 56시간의 긴급 점검 회고 - 그때 그 명검은 왜 뽑아야 했는가 (0) | 2022.06.10 |
---|---|
테스트자동화 도구 개발 생존전략 (0) | 2022.06.09 |
"달빛조각사"에서 서버 테스트 코드를 작성하는 방법 (0) | 2022.06.09 |
프로젝트 MOD CI2021 (0) | 2022.06.08 |
블록체인과 가상세계의 진화 (0) | 2022.06.08 |
댓글