내가 원하는 게임오브젝트를 찾고싶을때 사용한다.
대신 오브젝트의 이름이 인수값으로 들어가줘야 한다.
GameObject.Find("이름");
두 코드 모두 원하는 게임 오브젝트를 태그로 찾고싶을때 사용한다.
태그의 이름과 미리 원하는 오브젝트를 태그로 분류 시켜놔야한다.
GameObject.FindWithTag("name");
GameObject.FindGameObjectWithTag("name");
자원 소비 측면에서, FindWithTag();가 일반적으로 FindObjectOfType();보다 효율적이라고 간주됨
FindWithTag()는 특정 태그가 할당된 게임 오브젝트를 검색하는 반면,
FindObjectOfType()는 요청된 컴포넌트를 찾을 때까지 씬의 모든 게임 오브젝트를 검색하기 때문
FindObjectOfType()를 사용할 때
검색 대상 게임 오브젝트의 수가 많으면(하이러키창에 배치되어 있는 게임오브젝트의 수),
특히 검색 대상 컴포넌트가 검색의 끝 부분에 위치하면
검색이 느려지고 자원이 많이 소비될 수 있다 (항상 최악의 경우를 생각하자)
반면, FindWithTag()는
특정 태그를 가진 게임 오브젝트만 확인하므로 검색해야 하는 게임 오브젝트 수가 줄어든다.
※ Scene에 많은 수의 오브젝트가 존재하고, 검색하려는 오브젝트의 태그를 알고 있다면,
최적화와 자원 최소화를 위해 일반적으로 FindWithTag()를 사용하는 것이 좋다
유일한 태그를 가진 오브젝트를 찾을때는
FindObjectOfType() 적극사용!
FindWithTag() 함수는 FindGameObjectWithTag() 함수와 같이 태그 문자열을 사용하지만,
지정된 태그 문자열이 있는 GameObject를 검색하는 알고리즘을 수행하기 위해
"해시 테이블"을 사용하기 때문
FindGameObjectWithTag함수같은경우 게임 내에서
태그 문자열이 유일한 경우에 게임오브젝트를 하나만 찾으면 되므로 성능면에서 더 유리
1. "Key-Value" 구조를 가지는 컬렉션
키(Key)는 데이터를 식별하기 위해 필요한 정보를 가지며,
Hashtable에서 키는 모든 데이터 타입이 될 수 있습니다.
값(Value)은 키에 매핑되는 데이터입니다.
자료구조의 영역이라 아직은 나에게 무리이다. 여기까지만 알아보자.