728x90
반응형

📕오늘의 공부 주제



ParrelSync란 무엇이고, Unity에서 어떻게 사용하는지에 대한 학습 정리

🤔Why?



- 멀티플레이 게임을 개발할 때, Host와 Client를 동시에 테스트하려면 보통 **빌드를 여러 번** 해야 하는데 시간이 많이 걸림 - ParrelSync를 사용하면 **Unity 에디터 인스턴스를 복제**해서, 빌드 없이 동시에 여러 플레이어를 실행 가능 - 이렇게 하면 네트워크 동작, 멀티플레이 상호작용, 동기화 로직 등을 훨씬 빠르게 테스트 가능

📖오늘의 공부 내용



1) ParrelSync란?

  • Unity 프로젝트를 복제(클론)해서 여러 에디터 인스턴스를 실행하게 해주는 에디터 확장 툴
  • 원본과 클론은 Assets / ProjectSettings 폴더를 공유(심볼릭 링크)
  • Library, Temp 폴더는 각 인스턴스가 따로 사용하므로 실행 환경이 독립됨
  • 빌드 없이도 멀티플레이어 테스트 가능

2) 설치 방법

  • Git URL로 설치
    https://github.com/VeriorPies/ParrelSync.git?path=/ParrelSync
  • 또는 Packages/manifest.json에 직접 추가
    {
    "dependencies": {
      "com.veriorpies.parrelsync": "https://github.com/VeriorPies/ParrelSync.git?path=/ParrelSync"
    }
    }

3) 기본 사용 방법

  1. Unity 상단 메뉴에서 ParrelSync > Clones Manager 선택
  2. Create new clone 클릭 → 프로젝트 클론 생성
  3. 클론 옆의 Open in New Editor로 새 에디터 인스턴스 실행
  4. 원본 에디터는 Host, 클론 에디터는 Client로 실행되게 스크립트에서 분기 처리
  5. 테스트 후 필요 없으면 Remove로 클론 삭제

4) 클론 여부 확인 코드

#if UNITY_EDITOR
using ParrelSync;
#endif

void Start()
{
#if UNITY_EDITOR
    bool isClone = ClonesManager.IsClone();
#else
    bool isClone = false;
#endif

    if (isClone)
    {
        Debug.Log("이 인스턴스는 클론입니다. → Client 모드 실행");
    }
    else
    {
        Debug.Log("이 인스턴스는 원본입니다. → Host 모드 실행");
    }
}

5) 장점

  • 빠른 멀티플레이 테스트: 빌드 없이 바로 실행 가능
  • 동기화 편리: 코드나 에셋 수정이 즉시 모든 인스턴스에 반영
  • 다양한 시나리오 실험: 각 인스턴스에 다른 인자 전달 가능 (포트, 유저 ID 등)

6) 주의할 점

  • persistentDataPath가 같기 때문에, 클론 인스턴스끼리 저장 데이터가 섞일 수 있음 → 경로에 접미사 추가 권장
  • MPPM(Unity Multiplayer Play Mode)와는 동시 사용 불가
728x90
반응형

'프로그래밍 공부 > TIL' 카테고리의 다른 글

2025-07-31 TIL  (0) 2025.07.31
2025-07-30 TIL  (1) 2025.07.30
2025-07-28 TIL  (0) 2025.07.28
2025-07-25 TIL  (3) 2025.07.25
2025-07-24 TIL  (0) 2025.07.24