헤드리스 UE를 브라우저로 보고 조종하다
군사 시뮬레이터를 고객에게 보여줄 때, "우리 서버 와서 보세요"는 안 됩니다. 브라우저만 열면 원격 GPU 서버의 언리얼 화면이 뜨고, 마우스로 시점을 돌리고 키보드로 조종까지 되어야 합니다. 이걸 가능케 하는 게 Pixel Streaming입니다. 세 기둥으로 이루어집니다.
세 기둥
도식 렌더링 중…
- 헤드리스 렌더 — 서버의 UE는 화면 창 없이 렌더만 합니다(headless ≠ no-render). 그 픽셀을 NVENC 하드웨어 인코더가 영상으로 압축.
- WebRTC 스트리밍 — 압축된 영상을 WebRTC로 브라우저에 실시간 전송.
- 실시간 상호작용 — 브라우저의 마우스·키보드 입력이 거꾸로 서버 UE로 전달돼, 진짜 조종이 됩니다.
영상은 내려가고(server→browser), 입력은 올라가는(browser→server) 양방향이 핵심입니다 — 단순 영상 송출이 아니라 원격 조종입니다.
조합이 까다롭다
이 파이프라인은 구성 요소의 버전·맵·플러그인이 딱 맞아야 작동합니다.
💡 버전 정합이 절반 — Pixel Streaming은 플러그인 세대(구/신), 시그널링 서버 버전, 엔진 브랜치, 시작 맵, 실행 플래그가 서로 호환되는 조합일 때만 영상이 흐릅니다. 한 조각만 어긋나도 "연결은 되는데 화면이 까맣다"가 납니다. 검증된 조합을 찾으면 그걸 고정하는 게 안전합니다.
GPU 상시 가동의 함정
⚠️
-RenderOffScreen도 GPU를 문다 — 무인 상시 가동 금지 — 헤드리스로 띄워도 NVENC 인코딩이 GPU를 상당히 점유합니다. "데모용으로 그냥 띄워두자"며 nohup으로 방치하면 GPU가 계속 90%대로 물립니다. 반드시 최대 실행 시간 자동 종료(auto-stop) 같은 안전장치를 둬야 합니다 — 화면이 없다고 GPU가 노는 게 아닙니다.
왜 이게 제품의 일부인가
Pixel Streaming은 단순 데모 기술이 아닙니다. "어디서든 브라우저로 접속해 시뮬레이션을 보고 조종한다"는 건, 외부 고객이 직접 쓰는 제품의 전달 방식 그 자체입니다. 무거운 GPU·엔진은 서버에 두고, 사용자는 가벼운 브라우저만 — 이게 SaaS형 시뮬레이션의 전달 모델입니다.
한 줄 정리
📌 Pixel Streaming은 헤드리스 렌더 + WebRTC 스트리밍 + 실시간 양방향 입력 세 기둥으로, 원격 GPU의 UE 화면을 브라우저에서 보고 조종하게 한다. 버전 정합이 작동의 절반이고, NVENC가 GPU를 물기에 무인 상시 가동엔 자동 종료가 필수다. 이건 데모가 아니라 SaaS형 전달 모델이다.
imSim 포털에서 표준 시험 결과를 영상과 판정 근거로 볼 수 있습니다.
공개 결과 보기 →