아무리 구글링해봐도 잘 안나오네
예를 들어 내가 A라는 오브젝트에 A라는 스크립트를 넣었어
그런데 그 스크립트에 public GameObject[] B; 라고 적었을 때
이 B 배열의 오브젝트들의 Sprite를 A 스크립트 내에서 변경할 수 있을까?
한 번 컴포넌트를 연결시킬까도 생각해봤는데
GameObject 형식은 SpriteRenderer 형식으로 바꿀 수 없다고 뜨기도 하고
그렇다고 B 오브젝트 자체에 Sprite를 변경하는 스크립트를 넣기에는 B 오브젝트가 여러개이기도 하고
여러 문제가 좀 있네
코드 사진을 추가하는게 더 쉽겠다
36번줄의 save 오브젝트의 sprite를 10번줄에서 저장중인 sprite 중 하나로 바꾸고 싶어서 그래
해당오브젝트.GetComponent`SpriteRenderer`().sprite = 원하는 스프라이트
오 이렇게 하는거였구나 고마워 난 지금껏 save = GetComponent(); 이렇게 먼저 해야하는 줄 알았어...
SpriteRenderer saveSprite = save.GetComponent<SpriteRenderer>(); saveSprite.sprite = 넣을 스프라이트
오 이런 식으로도 되는구나 ㅇㅎ
미리 변수에 선언해놓고 하는건 반복적인 작업일때 매번 GetComponent를 쓰는게 비효율적이라 그런거고, 정 필요하다면 윗 댓글들처럼 그때그때 GetComponent해도 됨