최근 수정 시각 : 2024-02-17 21:02:16

Moonlight(소프트웨어)

Moonlight
파일:Moonlight(게임 스트리밍 프로그램) 로고.svg
분류 원격 제어 소프트웨어
공식 최신 버전 5.0.1[1]
호스트 플랫폼 Windows 10 이상의 운영체제
H.264 하드웨어 인코딩을 지원하는 Intel/AMD/NVIDIA GPU
NVIDIA GeForce Experience 또는 Sunshine 설치 필요
클라이언트 플랫폼 Windows/macOS/리눅스를 사용하는 AMD64 데스크톱
라즈베리 파이, NVIDIA 젯슨, 닌텐도 스위치 홈브루, 스팀 링크 하드웨어
안드로이드 기기, iOS 기기, 애플 TV, 크롬 OS 기기
PS Vita[비공식]
라이선스 GNU GPL
링크 파일:홈페이지 아이콘.svg

1. 개요2. 사용법
2.1. GeForce/Quadro Experience (지원 중단 예정)2.2. Sunshine을 이용한 방법
3. 지원 하드웨어 및 소프트웨어
3.1. 하드웨어
3.1.1. 게임 컨트롤러
3.2. 소프트웨어
4. 팁

[clearfix]

1. 개요

Moonlight는 NVIDIA GPU를 사용하는 컴퓨터를 호스트로 하는 게임 스트리밍 프로그램이며, 기술적으로는 NVIDIA SHIELD의 오픈소스 클라이언트로만 작동했었지만, GameStream 기술의 지원 종료가 발표됨에 따라 예고 없이 서비스가 종료되고 있어 오픈소스 스트리밍 서버인 Sunshine의 클라이언트로도 동작하고 있다. 선택권이 있는 NVIDIA GPU에서는 2023년 6월 기준으로는 대등한 퍼포먼스를 보이거나 오히려 Sunshine이 앞서는 경우도 있다고 하니, 미래를 생각하면 Sunshine도 같이 깔아두는 것이 좋다.

2013년의 MHacks 해커톤에서 개발된 것을 시초로 현재까지 명맥을 유지하고 있는 게임 스트리밍 프로그램이다. Parsec이나 Steam의 Remote Play와 같은 게임 스트리밍 프로그램은 많지만, Moonlight의 장점을 꼽자면 NVIDIA GameStream은 애초에 그래픽카드 제조사 기술이고 Sunshine 서버도 자잘한 사용성보다는 GameStream을 사용하던 유저층을 성능적으로 만족시키는 것을 지향했기 때문에 빠르며 H.265 같은 신기술에 접근하기 쉽다는 장점을 들 수 있다. 그러나 Parsec이나 Remote Play Together와 같은 2인 플레이에는 적합하지 않은 것이 단점.

여기에 자극을 받았는지 경쟁사인 AMD는 회사 단계에서 AMD Link를 내놓았다. 다만 공식임에도 불구하고 영 쓰기 좋지 않았어서 외려 오픈소스인 Sunshine/Moonlight 조합에 밀려나고 있는 처지. 결국 써드 파티와 경쟁하지 않음을 내세우며 24년 1월 종료하였다.#

2. 사용법

현재 Moonlight는 스트리밍 프로그램으로 GeForce/Quadro Experience와 Sunshine을 지원한다.

이와는 별개로 UPnP를 지원하지 않거나 정책적으로 GameStream/Sunshine을 막아놓은 곳에서는 별개의 가상 사설망의 구축이 필요한데, 제작진은 대안으로 ZeroTier를 권하고 있다.

2.1. GeForce/Quadro Experience (지원 중단 예정)

사용 전 먼저 호스트는 GeForce Experience를 설치한 뒤 (쿼드로 계통의 경우 Quadro Experience) SHIELD 스트리밍을 활성화한다.
로컬 네트워크 안에서의 사용법은 쉽다. GeForce Experience가 설치되어 있다는 전제 하에, Moonlight가 알아서 PC를 잡는다. 원하는 PC와 페어링을 최초로 한 번 해준 뒤 뜨는 게임 목록에서 플레이하면 끝.
그러나 인터넷에서 플레이할 것이라면 조금 방법이 복잡한데, 우선 호스트 측에서는 Moonlight가 제공하는 호스팅 도구를 깔고 연결 상태를 체크해야 한다. 그 다음에는 로컬 네트워크 안에서 이미 페어링한 컴퓨터라면 그냥 밖으로 나가서도 알아서 페어링이 되고, 그렇지 않았다면 컴퓨터의 외부 IP 주소[3]를 Moonlight에 직접 입력해야 한다. IP 주소를 외우기보다는 DDNS 서비스를 이용하자. 요즘은 공유기나 나스에서 기본 지원하는 경우도 많다.

2.2. Sunshine을 이용한 방법

Sunshine 인스톨러를 통해 Sunshine과 필요한 부대 프로그램을 모두 설치한 뒤, 원격 스트리밍을 할 것이라면 Windows 호스트의 경우 Moonlight의 호스팅 도구를 역시 실행한다.[4] 혹은 UPnP를 지원하는 라우터의 경우 Sunshine UI에서 UPnP를 켜면 끝. PIN을 입력할 때는 Sunshine을 입력하면 나오는 웹 UI를 이용하면 된다.

3. 지원 하드웨어 및 소프트웨어

3.1. 하드웨어

3.1.1. 게임 컨트롤러

플랫폼별로 지원하는 컨트롤러가 다르다.
  • 아래의 기기들을 제외한 플랫폼들(윈도우, 리눅스, 라즈베리 파이 등)은 XInput 기반의 컨트롤러가 지원된다.
  • 안드로이드는 연결 가능한 모든 컨트롤러가 지원되어 PC형 플랫폼보다 게임패드 사용이 자유롭다.
  • iOS는 MFi 기기[5]를 제외하면 블루투스로 연결된 XboxPlayStation 컨트롤러 정품[6]만 지원한다.[7]
  • PS Vita는 자체 컨트롤을 사용한다. VitaControl 등의 플러그인을 설치하면 외부 컨트롤러도 당연히 사용 가능하다.

3.2. 소프트웨어

사실상 호환성 제약은 현재로서는 거의 없는 것으로 알려져 있다. 굳이 따지면 RetroArchPCSX2 등 XInput을 거치지 않고 DirectInput이나 SDL에 붙는 일부 에뮬레이터나 레거시 게임이 열외가 되겠지만, 이미 Sunshine이나 GameStream보다도 한참 전에 알려진 문제이기 때문에 해당 문제를 해결하기 위한 대응 유틸리티를 이용하면 해결이 가능하다.

4.

  • 한국 온라인 게임 등을 할 때나 그냥 데스크톱 원격 제어 수단으로 쓰고 싶을 때는 게임 대신에 원격 데스크톱 연결 프로그램 (%WinDir%\System32\mstsc.exe)을 게임으로 지정하면 된다. 이름은 원격 데스크톱 연결이지만 원격 데스크톱 연결을 실제로 실행하지는 않고, 그냥 아무 프로그램 없이 GameStream이 실행된다.
    • Sunshine 호스트의 경우 이렇게 할 필요 없이 기본적으로 원격 데스크톱 (게임을 실행하지 않고 제어권만 넘겨받음)과 Steam Big Picture가 등록되어 있다.
  • 검은 화면만 뜨고 아무런 작동 하지 않는 경우가 있는데 이는 호스트 PC에 모니터를 연결하지 않거나 모니터 전원이 꺼짐 등의 이유로 모니터 신호를 받아오지 못하기 때문이다. 이를 방지하기 위해서는 더미플러그를 이용하면 된다.

[1] Windows/macOS/리눅스를 사용하는 AMD64 데스크톱 및 라즈베리 파이, NVIDIA 젯슨, 닌텐도 스위치 홈브루, 스팀 링크 하드웨어 등의 온보드 컴퓨터[비공식] [3] 요즘 컴퓨터는 공유기 뒤에 있는 경우가 많으므로 공유기 IP인 경우가 많다.[4] Sunshine이 개발 단계부터 Moonlight와의 호환성을 극도로 염두에 두고 만들어졌기 때문에 디스커버리나 접속에 사용하는 포트 등이 GameStream과 같기 때문에 도구가 호환되는 것이다. 물론 Sunshine 측에서도 최소한의 방화벽 룰은 제공하기는 한다.[5] 제작진은 MFi 기기가 버튼이 모자란 경우가 많아서 권장하지 않는다. 그러나 RAZER사의 Kishi 등 클라우드 게이밍에 특화된 MFi 기기가 속속들이 나오고 있기 때문에 별로 걱정할 필요는 없다.[6] One 이후 Xbox 컨트롤러와 상응하는 엘리트 컨트롤러, 듀얼쇼크 4, 듀얼센스 (및 엣지)[7] 이는 Moonlight의 자체적인 제약이 아닌 iOS의 근본적인 제약이다.