프리팹으로 작업하는 Unity

프리팹은 개발자가 게임 오브젝트를 구성 요소 및 기타 데이터와 함께 구성 가능한 템플릿에 저장할 수 있도록 하는 특수 자산입니다. 이 템플릿은 나중에 다시 구성할 필요 없이 장면과 다른 프로젝트 간에 재사용하거나 스크립트를 통해 인스턴스화할 수 있습니다.

프리팹이 유용한 경우:

  • 환경 자산(나무, 관목, 암석 등)
  • NPC(비플레이어 캐릭터)
  • 발사체
  • 플레이어 인스턴스
  • 게임에서 재사용해야 하는 모든 개체

사용예

모델을 장면에 직접 드래그 앤 드롭하면 다음과 같은 몇 가지 문제가 발생하는 경우가 많습니다.

  • 누락된 텍스처
  • 잘못된 규모
  • 잘못된 회전

기본 재질을 사용한 나무 모델

위의 문제는 장면에서 쉽게 해결할 수 있습니다(올바른 재질 할당, 배율/회전 변경 등).

올바른 재료를 사용한 나무 모델

그러나 모델을 반복적으로 사용하거나 다양한 장면에서 사용할 계획이라면 위 단계를 반복하는 것이 지루한 작업이 되기 때문에 대신 모델을 프리팹에 저장할 수 있습니다.

프리팹을 만드는 방법

  • Unity에서 프리팹을 생성하려면 씬 뷰에서 프로젝트 뷰로 객체를 드래그 앤 드롭하면 됩니다.

Unity 3D 프리팹 생성

  • 프리팹이 생성된 후에는 어떤 씬에도 놓을 수 있어 정확한 복사본을 생성할 수 있습니다.

Unity 프리팹 프로젝트 뷰

프리팹 편집

기존 Prefab 편집은 Prefab 편집기에서 수정하거나 Scene에서 수정하는 두 가지 방법으로 수행됩니다.

프리팹 편집기에서 수정

  • Project 뷰에서 Prefab을 선택한 다음 Inspector 뷰에서 "Open Prefab"

  • Prefab이 편집기에서 열리며 여기서 수정할 수 있습니다.

  • 수정이 완료되면 계층 보기에서 뒤로 화살표를 클릭하여 편집을 종료하고 변경 사항을 저장합니다.

Unity 3D 저장 프리팹 변경 사항(방법 1)

장면에서 수정

  • Prefab을 Scene 뷰에 놓은 다음 거기서 편집하세요.

  • 제 경우에는 계층 구조에 다른 개체를 추가했습니다(아이콘 근처에 (+) 기호가 있음)
  • 장면에서 프리팹을 수정할 때 변경 사항은 자동으로 저장되지 않습니다. 대신 프리팹의 루트 객체를 수동으로 선택해야 하며 Inspector View에서 "Overrides"을 클릭한 다음 "Apply All"를 클릭하여 변경 사항을 저장하거나 *h25를 클릭해야 합니다. * 변경 사항을 되돌리려면.

  • 장면에서 직접 Prefab을 편집할 때 일부 작업은 지원되지 않습니다. 예를 들어 계층 구조를 재구성해야 하는 경우 "Cannot restructure Prefab instance" 메시지와 "Open Prefab" 또는 "Cancel" 옵션이 표시됩니다.

Prefab 인스턴스를 재구성하려면 'Open Prefab'을 클릭하거나 Hierarchy 보기에서 Prefab을 마우스 오른쪽 버튼으로 클릭한 다음 Prefab -> Unpack 또는 Prefab -> Unpack Completely를 클릭합니다.

Prefab을 풀면 기본 Prefab과의 연결이 제거되어 Scene에서 완전히 편집 가능해집니다.

압축을 푼 Prefab을 다시 저장하려면 원본 Prefab이 있는 폴더를 선택한 다음 Hierarchy View에서 수정된 개체를 해당 Prefab으로 끌어다 놓습니다.

Unity 3D 저장 프리팹 변경 사항(방법 2)

때로는 변경 사항이 너무 과격한 경우 확인 메시지가 표시됩니다.

올바른 프리팹을 수정하고 있는지 다시 확인한 후 "Replace Anyway"를 클릭하여 작업을 완료하거나 "교체하지 않음"을 클릭하여 작업을 취소하세요.

Unity 3D 프리팹 교체 확인 메시지

이제 새 프리팹이 저장되어 사용할 준비가 되었습니다.

추천 기사
Unity에서 지형에 나무를 그리는 방법
Unity의 에셋 번들 사용
Unity로 애니메이션을 가져오는 방법
Unity 환경에 적합한 Skybox 선택
불법 복제로부터 Unity 게임을 보호하기 위한 전략
Unity에서 FNAF에서 영감을 받은 게임을 만드는 방법
Unity 게임 개발에서 스토리텔링의 중요성