App Id Fusion에서 Photon 공식 홈페이지에서 신청한 Fusion App ID를 입력하고,
테스트 시 Fixed Region을 jp로 설정하여 테스트 속도를 빠르게 할 수 있으며, 기타 설정은 다음과 같습니다.
Photon 앱 설정 (참고: AppID는 직접 신청하시길 바라며 사진 숫자는 포맷용입니다.)
(4) 네트워크 프로젝트 구성을 구성하려면 /Assets/Photon/Fusion/Resources/NetworkProjectConfig로 이동하세요.
기본적으로 이 프로젝트의 모든 파라미터는 최적화되어 있으므로 변경할 필요가 없으나, 변경을 피하기 위해 기본 값이 다음과 같이 설정되어 있는지 확인하시길 바랍니다.
* Peer Mode가 Single로 설정되어 있음
* Physics Engine이 Physics3D로 되어 있음
* Server Physics Mode는 Client Prediction으로 설정.
네트워크 프로젝트 구성 참조 설정
더 중요한 부분은 Simulation의 Tick Rate이므로 수동으로 30 tick으로 변경하세요.
모바일과 같은 WebGL 플랫폼은 리소스가 상대적으로 부족하기 때문에 Tick Rate가 너무 높으면 구형 컴퓨터나 느린 네트워크에서 리소스 낭비가 발생할 수 있습니다.
(5) Unity의 Build Settings를 열고 이 프로젝트의 Scene에 있는 Menu와 Game이 목록에 있는지 확인하고 다음과 같이 Platform이 WebGL로 전환되어야 합니다.
(6) 플레이어 설정에 들어가면 Unity 2022.x에서 Graphics API에 WebGL 2 사양만 있는 것을 볼 수 있습니다. 이전 사양을 선택하는 것에 대해 걱정할 필요가 없습니다^^.
(7) Unity의 Build Settings로 돌아가서 Build And Run을 누릅니다.
~ 잠시 쉬세요, 컴퓨터가 출력을 실행하는 데 시간이 걸릴 수 있습니다 ~
(8) 이제 브라우저가 팝업되어 게임 파일 다운로드를 시작해야 하며 Unity가 자체적으로 웹 호스팅 역할을 하기 때문에 브라우저의 URL은 로컬 관련 URL이 됩니다. 로딩이 완료되면 이 연결 게임을 테스트할 수 있습니다!!
(9) 마지막으로 WebServer/WebGL 호스팅 플랫폼에 퍼블리싱을 하고 싶다면 Unity 프로젝트로 이동하여 WebGL의 출력 위치를 찾아 모든 파일을 패키징 및 업로드하고 URL을 퍼블리싱하면 됩니다.
itch.io를 예로 들면, 공식 웹사이트에서 계정을 신청하고 새 프로젝트를 생성하기만 하면 프로젝트 정보 페이지에서 몇 가지 설명과 설정을 입력할 수 있습니다. 예를 들어 Fusion Golf 설정은 다음과 같습니다.
itch.io의 설정은 간단하고 이해하기 쉽습니다.
같은 페이지에서 Uploads를 찾아 Unity의 WebGL에서 출력한 디렉토리를 Zip 파일로 패키징하고 이 페이지에 업로드하여 저장합니다.
"이 파일은 브라우저에서 재생될 것입니다."라는 아주 중요한 부분에 주목하세요. 플레이어가 브라우저에서 게임을 실행할 수 있도록 반드시 확인해야 합니다!
Unity 출력 프로젝트를 업로드합니다.
itch 프로젝트 페이지에 저장한 후 오류 메시지가 표시되면 itch 문서를 참조하여 해결해 주시길 바랍니다.
게임이 아직 실행되지 않은 상태에서 발생하는 에러는 기본적으로 Photon SDK와 관련이 없기 때문입니다.
(10) 바로 itch에서 제공하는 프로젝트 URL을 자신의 브라우저에 입력하고 프로그램을 다시 다운로드하여 재생할 수 있습니다!!
연결 및 재생 부분은 본 기사 앞서 영상에 조작법이 있으니, 여기서는 말로 설명하지 않고 영상의 내용을 직접 보시면 이해가 쉽습니다.^^
・・・
다음으로 Quantum Blueless 실행 화면을 살펴 보겠습니다.
Quantum Blueless, 2D 플랫포머 게임.
보다 완벽한 WebGL 연결 실행의 효과는이 기사의 앞서 부분에 있는 비디오 링크에서 확인해 주세요. 아직 보지 않았다면 먼저 확인하는 것을 권장합니다!
본 프로젝트의 기술 해설은 Photon 공식 사이트에 게재되어 있으므로 아래를 참조하시길 바랍니다.
그리고 해당 프로젝트는 Quantum SDK를 사용하기 때문에 현재 사용 가능한 "무료 개발" 플랜이 없으므로 프로젝트를 다운로드할 수 없지만 이러한 유형의 게임 또는 플랫폼 개발에 관심이 있는 분들은 저희에게 연락하여 제안할 수 있습니다. Quantum SDK 트라이얼(Gaming Circle Trial) 신청하시면 접수 후 제공하겠습니다~
이미 Quantum SDK를 사용하고 계신 분들은 이 프로젝트 예제를 다운로드한 후 다음 사항에 주의하셔야 합니다.
● 플랫폼 브라우저의 한계로 인해 특히 네트워크는 TCP(WSS)를 사용하여 전송하므로 UDP보다 성능이 다소 떨어지므로 Standalone / Console / Desktop 기준으로 보지 마시길 바랍니다.
● Unity는 최근 버전에서 많은 WebGL 기능을 개선하여 전반적인 실행 성능을 향상시켰으므로 출력을 위해 Unity 2021.3 또는 2022 이상을 사용하는 것이 좋습니다.
● WebGL의 Unity 출력은 하나의 스레드만 가질 수 있으니 Quantum 설정에서 스레드 설정을 1로 변경하십시오.
● 게임이 정지되거나 동기화되지 않는 경우 Photon이 다양한 문제를 지속적으로 업데이트 및 개선할 예정이므로 이 프로젝트의 Quantum SDK 버전을 최신 버전으로 업데이트하십시오.
위의 사항을 확인하신 후 WebGL 구축을 시작하실 수 있습니다.
기본적으로 Unity의 WebGL 설정은 이전 Fusion SDK의 WebGL 설정과 동일하고, itch.io의 동작도 유사하므로 여기서 텍스트 설명을 생략합니다.
위의 스크린샷은 노트북의 Browser와 iPad의 Safari에서 실행한 Blueless 샘플 프로젝트의 WebGL 연결인데 특별한 설명이 없으면 그저 여러 개의 연결이라고 생각하시면 될 것 같습니다. 로컬 머신에서 실행되는 독립 실행형입니다.
WebGL 개발에서 Fusion SDK 및 Quantum SDK에 대해 질문이 있으시면 팬 그룹에서 문의해 주셔도 됩니다!
・・・
마무리
위의 소개와 구현을 예제로 일부 이해한 후, 제품 또는 게임 아이디어를 개발하거나 추가로 개발할 수 있어야 합니다. 아이디어가 없으면 WebGL에서 다른 개발자나 게임을 참고할 수도 있습니다. 플랫폼은 그렇게 하고 모방에서 시작하려고 하면 개발 프로세스와 구조에 익숙해지면 더 많은 경험과 아이디어를 실현하는 능력을 갖게 될 것입니다!
Fusion SDK의 정확한 클록 Tick 기반 개념 아키텍처 또는 Quantum SDK의 ECS 코어를 통해 이러한 아키텍처가 캐주얼 게임이든 강렬한 실생활이든 많은 게임이나 애플리케이션에 사용할 수 있으며 무료로 플레이할 수 있습니다. 미래의 멀티버스에서는 확실히 더 많은 개발을 할 수 있을거라 믿습니다.