inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

UI 접근 질문이요.!!

211

toon88

작성한 질문수 9

0

강사님 강의도 듣고 다른 강의도 들어보면서 UI관련 궁금한점이 생겼습니다.!!

예를들어 총을발사 후  총알수보여주는 UI에서 총알수를 변경을 하고싶은데요.  어떤식으로 접근해야하는지 궁금합니다.

예를들어 

총 관련스크립트{

       총알 발사 => 총알숫자감소

       총알관련 UI접근  =>감소

}

UI스크립트{

    Update()  {

            총관련스크립트에서 총알 수를 읽어 온 후 UI변경

     }

}

주로 첫번째 방법을 이용했었는데요. 첫번째 방법처럼한다면 Manager.UI. 이런식으로 어떻게 접근을 해야할것같은데 어떻게 접근을 해야하는지 궁금합니다. 이런 총알 관련 UI가 UI_Scene을 상속받은 후 접근을 해야하는지..

아니면 UI_HpBar.cs 코드처럼 2번째 방법을 이용하는게 나중에 코드들이많아지면 이방법이 더 좋은방법인가요?.이방법도 옵저버패턴인지도 궁금합니다.!

ui C# unity

답변 1

0

Rookiss

첫번째 방법이 더 낫고 특별한 경우가 아니라면
매 프레임마다 UI를 갱신할 필요는 없습니다.
Popup이 아니라 항상 게임에서 노출 된다면
UI_Scene을 상속 받아서 만들면 됩니다.
그리고 옵저버랑은 딱히 상관이 없습니다.

마지막으로 UI와 게임 데이터는 구분하는게 좋습니다.
총알 횟수는 단순히 UI에 표헌하는 것뿐 아니라
실질적으로 총알이 없으면 총을 못 쏠테니,
인게임 로직이랑도 연관성이 있겠죠.
이런 경우 괜히 UI 쪽 코드에 총알 데이터를 섞어 놓으면 나중에
관리하기가 힘들어집니다.

그런데 처음부터 구조에 대해
그렇게 일일히 생각할 필요는 없습니다.
이것저것 시도하다가 이런저런 문제를 만나다보면
어떤 상황에서 뭘 사용하면 좋을지는 저절로 알게 됩니다.

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

0

37

2

픽셀 좌표 스크린 좌표

0

33

0

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

0

75

2

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

0

84

1

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

0

84

1

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

0

75

1

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

0

83

1

달리기 애니메이션 에러

0

89

2

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

0

66

1

GetKey 오류

0

110

2

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

0

107

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

529

1

GetComponent<Poolable> 질문드립니다.

0

102

2

UI 불러오지 못함

0

119

2

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

0

155

2