For the complete documentation index, see llms.txt. This page is also available as Markdown.

FishNet WebGL

이 가이드는 다음을 사용하는 데 도움을 줄 것입니다 FishNet의 웹소켓 전송, Bayou를 사용하고, Unity 프로젝트를 위한 Edgegap 헤드리스 서버를 만드는 방법을 안내합니다.

최종 샘플 프로젝트는 저희 GitHubFishnet_v4.1.6R_WebGL 폴더에서 찾을 수 있습니다. 이 가이드는 Bayou의 적절한 버전만 사용한다면 Fishnet의 어떤 버전에서도 동작해야 합니다.

FishNet 버전 4.1.6R에는 Edgegap 플러그인이 포함되어 있으므로, Dockerfile을 사용해 수동으로 처리할 수 있더라도 이를 사용해 게임 서버를 자동으로 빌드하고 컨테이너화하겠습니다.

플러그인에 대한 자세한 내용은 문서를 여기에서.

참고하세요. 제대로 동작하려면 Docker가 실행 중이어야 합니다.

Unity 요구 사항

이 프로젝트는 Unity 버전 2021.3.16f1에서 테스트되었습니다. 다음 모듈이 설치되어 있어야 합니다:

  • WebGL 빌드 지원;

  • Linux 전용 서버 빌드 지원;

  • Linux 빌드 지원(IL2CPP).

전송 방식을 전환합니다

Bayou용 Unity 패키지는 이 GitHub에서 다운로드하세요. 게임 프로젝트에서 툴바의 Asset/Import Package/Custom Package....

를 통해 패키지를 가져옵니다. MainMenu 다음 위치에 있는 씬을 여세요 Assets/SpaceEdge/Scenes. NetworkManager gameObject에서 Tugboat 전송 컴포넌트를 제거합니다. 이를 다음으로 바꾸세요 Bayou 전송을, 다음 위치에 있는 Asstes/FishNet/Plugins/Bayou. 설정된 포트 값을 확인해 두세요. 이 경우 7770.

다음을 활성화해야 합니다 헤드리스에서 시작 옵션을 서버 빌드에 대해.

게임 서버 빌드 및 컨테이너화

다음 경로의 Edgegap 플러그인을 여세요 Tools/Edgegap Hosting 툴바 메뉴에서 확인하세요. 다음을 검증하세요 Edgegap API 토큰 그리고 게임용 애플리케이션을 생성하거나 불러오세요. 다음을 확인하세요 포트 값이 Bayou 전송의 값과 일치해야 합니다. 다음을 선택하세요 WS 프로토콜을 선택한 뒤 새 버전 태그.

모든 설정이 제대로 완료되면 빌드 및 푸시를 클릭하세요. 그러면 잠시 후 게임 서버가 자동으로 컨테이너화되고 Edgegap 대시보드에 새 애플리케이션 버전이 생성됩니다.

클라이언트 테스트

에디터에서

프로젝트로 돌아가서 다음을 선택하세요 MatchmakingSystem gameObject를 열고 다음 필드를 변경하세요:

  • AppName: Edgegap 플러그인에서 사용한 “애플리케이션 이름”으로 설정합니다.

  • AppVersion: Edgegap 플러그인에서 사용한 “버전 이름”으로 설정합니다.

  • AuthHeaderValue: Edgegap 플러그인에서 사용한 Edgegap API 토큰으로 설정합니다.

다음을 제거하세요 token 단어를 API 토큰에서 제거하세요. 우리는 이를 Awake() 메서드 중 인증 헤더 스키마로 설정하고 있기 때문입니다. MatchmakingSystem.

를 통해 패키지를 가져옵니다. MatchmakingSystem 스크립트는 다음 위치에 있습니다 Assets/SpaceEdge/Scripts/Systems, 여기에서 같은 값들을 업데이트할 수도 있습니다. 다음을 검색하세요 "UDP_PORT""Game Port".

이 샘플의 이전 버전은 Edgegap 대시보드를 통해 애플리케이션을 수동으로 생성했으며, 이름 UDP_PORT 가 서버가 사용하는 포트 이름으로 사용되었습니다.

Edgegap 플러그인은 대신 포트 이름을 자동으로 Game Port 로 지정하므로, 스크립트를 반드시 업데이트해야 합니다. 그렇지 않으면 게임이 작동하지 않습니다.

다음 옵션의 선택을 해제했는지 확인하세요 헤드리스에서 시작 옵션을 NetworkManager gameObject에서도 해제하세요. 이제 클라이언트 연동을 테스트하려는 단계이기 때문입니다.

이 작업이 끝나면 재생 을 에디터에서 누른 다음 텍스트 상자에 이름을 입력하고 다음을 클릭하세요 게임 시작. 게임은 사용 가능한 서버를 찾거나, 없으면 자동으로 배포한 뒤 연결합니다.

Itch.io에서

에디터에서 게임 클라이언트가 작동함을 확인했다면 Itch.io에서도 작동해야 합니다. 거기에 게임을 업로드하려면 다음의 빌드 화면에서 Unity Editor의 File -> Build Settings아래에서 클라이언트 빌드를 만들어야 합니다. 다음 옵션을 선택하세요:

  • 설정 플랫폼을 에서 WebGL;

  • 열고 Player Settings를 여세요. Player -> Publishing Settings아래에서 다음을 설정하세요 압축 형식 에서 Gzip 으로 하고 다음이 선택되어 있는지 확인하세요 Decompression Fallback 옵션. 이 설정을 저장하고 창을 닫으세요.

그런 다음 빌드를 누르고 다음 이름의 새 빈 폴더를 선택하세요 build 를 파일 대상 위치로 지정합니다. 이 build 폴더의 파일들을 zip 폴더로 압축하되, 그 파일들이 루트에 있도록 하세요. 그런 다음 zip 폴더를 Itch 프로젝트에 업로드하고, 브라우저에서 파일이 실행되도록 하는 옵션을 선택하면 됩니다. 그러면 게임은 에디터에서와 동일하게 작동해야 합니다.

마지막 업데이트

도움이 되었나요?