This document is about: FUSION 2
SWITCH TO

Fusion 2 토폴로지 선택

올바른 네트워크 토폴로지 선택하기

Fusion은 동일한 API로 세 가지 근본적으로 다른 네트워크 토폴로지를 지원합니다. 각 토폴로지는 네트워크 통신 방식, 호스팅 요구사항, 비용, 사용 가능한 기능 등에 영향을 줍니다. 네트워크 연결이 없는 싱글 플레이어 모드도 지원합니다.

Fusion을 시작할 때 가장 먼저 해야 할 일은 사용할 모드를 선택하는 것입니다.

쿼드런트는 어떤 모드가 애플리케이션에 적합한지 결정하는 데 좋은 출발점을 제공합니다. 대부분의 게임 장르에는 추천하는 모드가 있습니다. 쿼드런트에는 장르와 인기 게임들을 모드별로 정리해 두었습니다. 일부 장르는 둘 이상의 모드에 적합할 수 있으며, 경우에 따라서는 Fusion 대신 Quantum을 추천하기도 합니다.

The Quadrant

전체 보기

쿼드런트 비교

쿼드런트에서는 네 가지 옵션이 표시됩니다:

  • Fusion - 전용 서버
  • Fusion - 클라이언트 호스트
  • Fusion - 공유 권한
  • Quantum

다음 카테고리로 비교합니다:

  • 추천 게임 타입: 어떤 유형의 게임이 이 솔루션에 적합한가?
  • 치트 방지: 플레이어가 치트 하는 것을 얼마나 쉽게 막을 수 있는가?
  • 서버 복잡도: 이 솔루션에서 온라인 기능을 설정하는 것은 얼마나 복잡한가?
  • 모바일 품질: 모바일 게임 및 애플리케이션에서 얼마나 잘 동작하는가?
  • 비용 효율성: 이 솔루션은 얼마나 비용 효율적인가?

각 프로젝트는 고유한 요구사항을 가지고 있으므로, Photon이 제공하는 다양한 프레임워크 간의 차이를 비교하고 이해하는 것이 중요합니다. 참고로 이 문서는 Photon Fusion에만 초점을 맞추고 있으며, Photon Quantum에 대한 내용은 여기에서 확인할 수 있습니다.

추천 게임 타입

장르에 따라 Fusion의 다양한 솔루션이 더 잘 어울릴 수 있습니다.

  • Fusion - 전용 서버: 사용자 수가 많고 경쟁적인 게임은 강력한 치트 방지 기능 덕분에 서버 모드에 적합합니다. 서버가 게임 월드의 상태 권한을 가지므로, 지속성이 필요한 게임에도 좋습니다.
  • Fusion - 클라이언트 호스트: 호스트 서버에 직접 연결되므로, 물리 기반 게임에 잘 맞습니다. 2~4명의 소규모 세션에도 적합하며, 치트 방지보다는 편의성을 중시하고 전용 서버 운영을 피하려는 경우 좋은 선택입니다. 결과적으로 비용도 절감할 수 있습니다.
  • Fusion - 공유 권한: 보다 캐주얼한 게임이나 플레이어 수가 많고 접속/이탈이 빈번한 애플리케이션에 적합합니다. 플레이어가 나가더라도 게임 플레이가 중단되지 않습니다.

Fusion 솔루션마다 추천하는 게임 타입에 일부 겹치는 부분이 있으므로, 각 솔루션의 차이를 잘 이해하는 것이 중요합니다.

치트 방지

온라인 게임에서는 치트가 문제를 일으킬 수 있으므로, Fusion 솔루션별 치트 방지 수준을 이해하는 것이 필요합니다.

  • Fusion - 전용 서버: 서버가 게임 상태를 관리하므로 치트 방지가 강력합니다. NetworkInputNetworkedProperties를 사용하는 경우 메모리 조작이나 스피드핵 등의 치트가 불가능합니다. 설계가 잘 된 서버 모드에서는 에임봇(Aimbot)이나 월핵(Wallhack) 정도만 가능하며, 이마저도 제한할 수 있습니다.
  • Fusion - 클라이언트 호스트: 클라이언트들은 호스트에 대해 치트 방지가 적용되지만, 호스트 자신은 치트가 가능합니다.
  • Fusion - 공유 권한: 플레이어가 자신이 제어하는 오브젝트에 대한 상태 권한을 가지므로, 추가적인 보안 조치 없이 치트가 발생할 수 있습니다. NetworkedProperty 조작이나 임의의 RPC 호출 등이 가능합니다.

서버 복잡도

Fusion의 세 가지 솔루션 중에서 서버 복잡도가 진짜 차이 나는 것은 전용 서버뿐입니다. 전용 서버를 설정하려면 게임의 헤드리스 서버 버전을 구축하여 직접 서버를 운영하거나, 타사 서버 호스팅 솔루션을 사용해야 합니다. 이는 추가적인 설정과 높은 비용이 필요합니다.

모바일 품질

모바일 디바이스는 성능과 연결성 제한이 있기 때문에 온라인 멀티플레이어 게임을 개발할 때 추가적인 고려가 필요합니다.

  • Fusion - 공유 권한: 모바일에 추천하는 모드입니다. Fusion의 빠른 성능 덕분에 클라우드에 직접 연결되므로 신뢰성이 높고, 재시뮬레이션이 필요 없어 CPU 사용량이 적습니다.
  • Fusion - 전용 서버: 서버 운영 비용이 추가로 들기 때문에, 높은 ARPU(평균 사용자 수익)를 기대하는 모바일 게임에만 추천됩니다.
  • Fusion - 클라이언트 호스트: 모바일에서는 추천하지 않습니다. 호스트 역할을 맡은 플레이어의 연결이 불안정하면 전체 게임 품질이 저하될 수 있습니다. 또한, 모바일 플레이어 이탈률이 높아 호스트가 게임을 종료할 경우, 새 호스트로 마이그레이션하는 과정에서 끊김이 발생할 수 있습니다. 모바일 네트워크에서는 NAT 펀치스루 성공률이 낮아 연결이 릴레이를 통해 이루어지며, 추가 지연이 발생합니다.

WebGL 빌드

WebGL에서는 공유 모드를 강력히 추천합니다.

공유 모드는 클라우드와 직접 연결되기 때문에 호스트나 서버 모드보다 훨씬 더 나은 지연 시간을 제공합니다. WebGL은 기본적으로 단일 스레드에서 실행되기 때문에 CPU 사용량이 낮아야 하며, 공유 모드는 이 점에서도 유리합니다.

서버 및 호스트 모드는 권장하지 않으며 기본적으로 비활성화되어 있습니다.

WebGL 빌드에서도 서버 역할을 할 수는 있지만, 성능과 네트워킹 제한으로 인해 추천되지 않습니다. WebGL은 브라우저 탭이 포커스를 잃으면 스레드가 일시 중단되므로, 서버가 중단되면 모든 플레이어가 영향을 받습니다. 또한, WebGL은 직접 연결을 지원하지 않으므로 항상 릴레이 연결을 사용해야 합니다.

WebGL에서 서버/호스트 모드를 활성화하려면 NetworkProjectConfig에서 "Enable ClientServer Modes in WebGL builds" 옵션을 활성화해야 합니다.

비용 효율성

Photon 솔루션 비용은 동시 접속 사용자(CCU)와 대역폭 사용량으로 구성됩니다.
Fusion의 세 가지 솔루션 모두 CCU 비용은 동일합니다.
대역폭은 사용자가 얼마나 많은 데이터를 전송하는지에 따라 달라지는데, 공유 모드나 릴레이 서버를 사용하는 호스트 모드에서는 대역폭 사용을 더 주의해야 합니다. 하지만 잘 최적화된 Fusion 게임이라면 무료 대역폭 한도를 넘지 않습니다. 전용 서버 모드를 사용할 경우 대역폭 비용은 타사 서버 호스팅 업체에 따라 달라집니다.

Fusion 요금제에 대한 자세한 내용은 여기에서 확인할 수 있습니다.

네트워크 토폴로지

Fusion의 전용 서버, 클라이언트 호스트, 공유 권한 네트워크 토폴로지에 대해 더 읽어보세요.

다음 단계는?

소개

Fusion 문서의 시작은 소개 페이지입니다.

튜토리얼

튜토리얼을 통해 시작할 수 있습니다. 전용 서버와 클라이언트 호스트는 프로그래밍 접근 방식이 같기 때문에 하나의 튜토리얼로 다룹니다:

네트워크 토폴로지

Fusion의 전용 서버, 클라이언트 호스트, 공유 권한 네트워크 토폴로지에 대해 더 읽어보세요.

Back to top