Unity
GetComponent<>
imagineer_jinny
2021. 6. 26. 10:48
이렇게 유니티 창에다 Player Rigidbody 같은 변수를 갖다 두면
기획자가 드래그 앤 드롭 하면서 오류를 낼 수 있음.
그래서 이 변수를 숨기고 싶은데 숨기면 또 speed가 Rigidbody를 받아와야하는데 없으니까 에러가 남.
해결책은?
코드로 가져오기!
GetComponent는 게임 오브젝트를 뒤져서 < > 안에 명시한 타입을 찾아줌.
드래그 앤 드롭 한 것과 똑같은 효과가 남.
< >는 Generic이라고 부르는 문법인데 특정 타입에 대해서 함수를 실행함.
즉 Rigidbody에 대해서 GetComponent를 하겠다.
정리
드래그 앤 드롭으로 컴포넌트를 적용해줄 수 있지만 이 방법은 잘못 드래그 하면 실수가 날 수 있음.
그래서 private로 안보이게 한 뒤 코드 상에서 start안에 GetComponent를 사용해서 똑같은 효과를 줄 수 있음.