이제 당근을 배치해보자.
위 사진처럼 토끼 뒤에 당근 12개를 랜덤으로 출현시켜야 한다. 랜덤 출현을 적용하기 전에 먼저 당근 12개를 프리팹을 이용하여 배치할 것이다. 똑같은 오브젝트를 여러 개 배치해야 하는 경우 필요한 컴포넌트를 만들면 매우 비효율적이게 된다. 이때 사용하는 것이 프리팹이다. 예를 들어, 당근 12개를 복제하여 이미지를 배치한 후 당근의 크기를 바꾸고 싶으면 12개를 하나하나 바꿔줘야한다. 하지만 프리팹을 이용하면 일일히 바꿔줘야하는 번거로움이 없어질 수 있다.
1. 프리팹 생성하기
프리팹으로 설정할 게임오브젝트를 하이어라키에 넣은 후 크기와 위치를 조정해주었다. 나는 image폴더에서 carrot 이미지를 드래그해주었다. 그리고 Assets 폴더에 Prefabs 폴더를 만들어 하이어라키에 있는 carrot 이미지를 드래그해 넣었다.
그럼 위 사진처럼 파란색으로 변하는데 그럼 프리팹이 생성된 것이다.
2. 프리팹 인스턴트화
생성한 프리팹을 Scene으로 드래그하면 동일한 오브젝트가 여러 개 생성된다. 이렇게 생성한 프리팹을 Scene에 배치하는 것을 프리팹의 인스턴트화라고 한다. 나는 하이어라키에 드래그 해주어 각 당근들을 배치하였다. 그리고 Create Empty를 만들어 당근을 한 곳에 정리하였다.
3. 프리팹 오버라이딩
위 사진을 보면 프리팹을 인스턴트화하고 각 당근을 원하는 위치에 조정을한 후 오른쪽 인스펙터를 확인하면 굵은 글씨로 바뀐 부분이 있다. 이것은 프리팹이 오버라이딩 됐다는 것을 의미한다. 오버라이딩 된 프리팹은 부모 프리팹에서 값을 변경해도 변경한 값으로 유지된다.
참고
https://novlog.tistory.com/entry/Unity3D-%ED%94%84%EB%A6%AC%ED%8C%B9-Prefabs
'🎮 Unity' 카테고리의 다른 글
[UNITY] 대화창 구현하기 / Scene 전환 (2) | 2023.08.02 |
---|---|
[UNITY] 아이템 랜덤 출력 (배열) (0) | 2023.03.19 |
[UNITY] 딜레이 주기(원하는 시간 뒤 이미지 출력) (0) | 2023.02.27 |
[UNITY] 랜덤 숫자 출력 / 버튼 이벤트 설정하기 / 성공.실패 이미지 띄우기 (0) | 2023.02.27 |
[UNITY] 슬라이더 디자인/볼륨 조절 (0) | 2023.02.15 |