inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

UI 자동화 #1

Bind() 함수 관련 질문입니다

245

astrape

작성한 질문수 23

0

1. 자동화 1까지의 강의 내용만으로 봤을때 Bind<T>(Type type) 함수를 완료하게되면 현재 enum값으로 만들어져 있던 Buttons.PointButton에 유니티안에 있는 PointButton 게임오브젝트를 연결 시키는 작업을 한건가요? Buttons.PointButton에 접근해서 유니티안의 PointButton을 수정할수 있도록 만든것이라고 이해하면될까요..?

2.  아래 바인드 코드에서 유니티엔진배열의 objects를 만들때 names의 길이만큼의 비어있는 배열을 만들어주고 

딕셔너리 형식의 _objects에 먼저 추가를 한 다음에 for문을 돌면서 objects[i]에 컴포넌트를 추가하였는데 _objects는 딕셔너리 형식인데 키가 없이도 objects[i]에 접근하여 바로 값을 수정할수 있는건가요..?

그리고 for문을 통하여 component를 찾는것과 _objects.Add를 하는것은 순서를 바꾸는게 저는 더 보기 편한것 같은데 상관없을까요?

Dictionary<Type, UnityEngine.Object[]> _objects = new Dictionary<Type, UnityEngine.Object[]>();

    void Bind<T>(Type type) where T : UnityEngine.Object

    {

        string[] names = Enum.GetNames(type);

        UnityEngine.Object[] objects = new UnityEngine.Object[names.Length];

        _objects.Add(typeof(T), objects);

        for (int i = 0; i < names.Length; i++)

        {

            objects[i] = Util.FindChild<T>(gameObject, names[i], true);

        }

    }

C# unity

답변 1

0

Rookiss

1.
네 그렇습니다. enum으로 넣어준 값과 동일한 이름을 찾아서 매핑해준 것입니다.

2.
리스트는 참조형이기 때문에, dictionary에 넣어준 애와
동일한 데이터를 수정하게 됩니다.
_objects.add 순서는 뒤로 가도 무방합니다.

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

0

24

2

픽셀 좌표 스크린 좌표

0

26

0

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

0

67

2

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

0

78

1

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

0

80

1

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

0

72

1

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

0

76

1

달리기 애니메이션 에러

0

85

2

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

0

63

1

GetKey 오류

0

108

2

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

0

104

1

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

0

167

6

Animation blending 파라미터 계산

0

65

1

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

0

94

3

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

0

85

2

질문있습니다

0

142

2

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

0

140

3

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

0

85

2

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

0

133

2

유니티6 NavMesh 안되는분들

1

174

1

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

7

524

1

GetComponent<Poolable> 질문드립니다.

0

99

2

UI 불러오지 못함

0

116

2

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

0

152

2