inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진

Input Manager

inputManager 질문 있습니다

423

강감찬

작성한 질문수 11

0

  1. 강의 내용을 보면 PlayerController에서 update함수에 캐릭터가 움직이는 로직을 직접 넣는것은 규모가 큰 게임에서는 효율이 안좋다고 하셨는데 어떤부분이 직접적으로 안좋은것이고 매니저를 따로 만들어서 작동시키는것이 어떤점이 좋은건지 조금 구체적으로 알고싶습니다. 이후강의에 resource manager도 같은 맥락으로 궁금점이 생겼는데요. resource manager같은 경우에는 진짜 유니티에서 제공하는 함수를 한번 더 박싱을 해서 쓰는것 뿐인데 왜 따로 매니저를 만드는지 궁금합니다

 

  1. 지금은 Camera편 강의를 보고 있다가 질문거리가 생겨서 여기에 질문 같이 올립니다. inputmanager, resource manager의 상위에 Managers라는 또 다른 매니저를 만들어서 여러가지 매니저들을 관리하는데요. 여러가지 매니저들을 따로따로 써도 될것같은데 굳이 한번 더 복잡하게 상위 매니저를 만들어서 한번에 쓰는것인지 궁금해요.

C# unity

답변 2

0

literate_t

1번 질문은 저도 궁금한데 답변이 없네요.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. 강감찬님의 질문에 대해 답변 드립니다.

  1. Update 함수와 매니저 사용의 효율성

    • 직접적으로 Update 함수 내에 로직을 많이 넣는 것이 왜 규모가 큰 게임에서 비효율적인가에 대하여, 실제로 이와 관련하여 지식 공유자분께서 해주신 답변이 Managers 질문에서 찾아볼 수 있습니다. 요약하자면, 컴포넌트와 관련된 클래스가 많아질 때 Update() 함수 호출 및 Input.GetKey 호출이 많아지면 성능 부하가 생길 수 있으며, 이를 관리하기 어려워지는 것입니다. 이러한 점을 해결하기 위해, 중앙에서 관리할 수 있는 매니저를 도입하여 이벤트 관리를 통한 효율성과 유지보수 측면의 향상을 기대할 수 있습니다.

    • 또한 계속 의문이 듭니다에서는 InputManager의 설계 구조와 역할 분리에 대한 이해를 돕는 설명이 있습니다. 일반적으로 입력 관리를 중앙에서 수행함으로써, 이벤트 기반으로 특정 입력에 대해 필요한 반응만을 처리하게 하여 코드의 관리 및 확장성을 개선할 수 있습니다.

  2. Managers 상위 매니저 생성의 이유

    • 여러 매니저들을 한 곳에서 관리하는 이유에 대해서는 유사한 질문에 대한 답변을 직접적으로 찾을 수 없었습니다. 하지만, 설계 측면에서 볼 때, 상위 매니저(Managers)를 만드는 것은 내부적으로 여러 하위 매니저(예: InputManager, ResourceManager 등)들을 효과적으로 조정하고 각 매니저 간의 의존성을 관리하기 위함일 수 있습니다. 이를 통해 코드의 모듈성을 증가시키고, 각 매니저가 제공하는 서비스를 보다 쉽게 접근할 수 있도록 만들며, 필요한 경우 한 곳에서 해당 서비스들의 초기화, 업데이트 및 종료를 관리할 수 있습니다.

위의 설명은 강의 내용과 유사한 질문에 대한 답변을 기반으로 제공된 정보입니다. 각 매니저 사용에 있어서의 구체적인 설계 방식이나 도입 배경은 프로젝트의 요구 사항이나 팀의 선호도에 따라 다를 수 있으멀로, 해당 강의의 다른 부분에서 더 상세한 설명을 제공할 수도 있습니다.

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

UI 기능 관련 질문이 있습니다!

0

39

2

픽셀 좌표 스크린 좌표

0

33

0

전체적으로 코드 읽는게 굉장히 오래 걸리네요...

0

78

2

카메라 #2 수업 캐릭터 쓰러짐 해결

0

85

1

플레이어 움직임이 끝날때, 기울어짐 현상

0

84

1

Input 적용과 관련하여 질문 있습니다.

0

75

1

디버그 불가.. Unity에 연결 불가

0

83

1

달리기 애니메이션 에러

0

89

2

오랜만에 게임을 만들다가 사운드 관련해서 뭔가 궁금한게 있어서 봤습니다

0

66

1

GetKey 오류

0

112

2

에셋을 어디에 올려두신지 알 수 있나요?

0

108

1

재귀호출? 오류나는데 왜 이래요 ?

0

169

6

Animation blending 파라미터 계산

0

69

1

newPos와 to지점이 겹쳐져야 하는거 아닌가요?

0

97

3

오브젝트 복제하니까 자꾸 이런게 뜨면서 꺼집니다

0

88

2

질문있습니다

0

143

2

아 이거 소스코드 같은거 없나요?

0

142

3

질문 드립니다. string.IsNullOrEmpty(name)

0

87

2

@Managers 가 씬에 배치되어 있어도 문제가 되지 않나요?

0

136

2

유니티6 NavMesh 안되는분들

1

176

1

Unity6 Unity-Chan Material 마젠타 문제 해결법

7

530

1

GetComponent<Poolable> 질문드립니다.

0

103

2

UI 불러오지 못함

0

119

2

UI 자동화 #1 - Util.cs의 FindChild함수에서 component.name에 컴포넌트 이름이 뜹니다.

0

155

2