Inflearn brand logo image

인프런 커뮤니티 질문&답변

전우형님의 프로필 이미지
전우형

작성한 질문수

유니티 시스템 프로그래밍 Pt.1 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지

Lobby 프리팹 구성 질문

해결된 질문

작성

·

47

·

수정됨

0

안녕하세요!

제공해주신 강의 도움이 많이 되고 있습니다.

  1. Lobby 씬 구조 및 디자인 패턴 (LobbyManager, LobbyUIController)

강의 질문있습니다.

Q. "LobbyManager, LobbyUIController를 구분하여 관리하자" 이해했습니다.

궁금한 부분은 해당 cs 파일들을 프리팹화 할때, 2개의 프리팹으로 나누었는데 1개의 프리팹에 몰아서 붙이고 Lobby라는 프리팹으로 관리해도 되지않을까? 라는 생각이 났는데 2개로 나누었을때 혹시 관리적인 부분에서 이점이 있을까요?
Lobby 씬 구조 및 디자인 패턴 (LobbyManager, LobbyUIController)

답변 3

1

BurningCarrot님의 프로필 이미지
BurningCarrot
지식공유자

안녕하세요! BurningCarrot입니다. 문의해 주신 내용에 답변 드립니다.

 

LobbyManager와 LobbyUIController 프리팹을 구분하는 이유는 LobbyUIController 프리팹을 UI 오브젝트의 관리만을 전담하게 해주기 위해 그렇습니다. 이렇게 해야 작업 과정에서 효율을 높이고 실수를 줄일 수 있습니다. 예를 들어 팀으로 작업하는 경우, 아트 직군 분들이 보통 UI 프리팹에 이미지/이펙트를 추가하고 수정하게 됩니다. LobbyManager와 LobbyUIController 관련 오브젝트들이 하나의 프리팹으로 통합되어 있을 경우, 아트 직군분들이 LobbyManager 요소를 실수로 수정하고 이를 인지하지 못한 채 적용해 버리면, 게임 로직이 의도한 대로 작동하지 않게 됩니다.

게임이 커지고 복잡해질 수록 이런 실수가 발생할 가능성이 높고, 그때마다 이를 해결하기 위해 추가적인 시간을 투입해야 합니다. 게임 개발 시 이러한 자잘한 실수가 생각보다 많은 시간을 잡아먹습니다. 때문에 유지보수 측면에서 분리할 수 있는 것은 분리해서 독립적인 시스템/프리팹으로 만들어 주는 것이 좋습니다.

 

추가로 궁금하신 점이 있으시다면 편하게 질문 부탁 드립니다. 🙂

0

전우형님의 프로필 이미지
전우형
질문자

LobbyManager의 경우 SingletonBehavior 상속받기때문에 별도로 뺀걸로 이해했습니다!

0

안녕하세요, 인프런 AI 인턴입니다. 전우형님.

Unity에서 LobbyManager와 LobbyUIController를 각각 별도의 프리팹으로 구분해서 관리하는 것에 대해 질문해 주셨네요. 이러한 설계 방식은 여러 장점과 이유가 있습니다.

LobbyManager 와 LobbyUIController를 구분하여 프리팹화하는 이유:

  1. 모듈화:

    • 각각의 기능을 수행하는 컴포넌트를 독립적으로 관리할 수 있어 개발과 유지보수에 유리합니다. LobbyManager는 주로 로비의 전반적인 게임 로직을 관리하고, LobbyUIController는 UI 관련 작업에 주력합니다.
  2. 재사용성:

    • 각 프리팹을 별도로 관리하면 다른 프로젝트나 씬에서도 활용이 용이합니다. 동일한 UI 패턴이나 매니저 로직을 필요로 하는 다른 씬에 쉽게 적용할 수 있습니다.
  3. 개발 협업의 효율성:

    • 팀 내 다른 개발자들이 각각의 프리팹을 따로 다룸으로써 협업이 용이해집니다. UI와 로직을 담당하는 개발자가 분리해서 작업하기에 효율적입니다.
  4. 문제 해결과 디버깅:

    • 문제가 발생했을 때 각각의 프리팹을 독립적으로 체크하여 문제를 파악하고 해결하기가 더 쉽습니다.

이러한 이유로, 모듈화와 유지보수가 용이한 설계가 가능해질 수 있습니다. 이는 복잡한 시스템일수록 더 큰 효과를 발휘합니다.

추가 자료 및 관련 링크:

전우형님께서 강의를 이어서 진행하실 때 도움이 되길 바랍니다. 질문이 있으시면 언제든지 추가로 문의해 주세요.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

전우형님의 프로필 이미지
전우형

작성한 질문수

질문하기