본문 바로가기

[Unity 2D] 19강 프리팹 변형(Variant)과 적용 흐름

@도마22026. 3. 19. 20:00
728x90


프리팹 변형(Variant)과 적용 흐름

이번 강의에서는
프리팹 Variant가 무엇인지,
그리고 같은 구조를 유지하면서 서로 다른 오브젝트를 만드는 흐름을 설명합니다.

이 개념을 이해하면
프리팹을 “하나만 만들어 쓰는 단계”에서
확장해서 관리하는 단계로 넘어가게 됩니다.


왜 프리팹 하나만으로는 부족할까?

프리팹을 쓰다 보면
이런 상황이 반드시 옵니다.

  • 같은 적인데 체력만 다른 경우
  • 같은 장애물인데 속도만 다른 경우
  • 같은 버튼인데 기능만 다른 경우

이럴 때

  • 프리팹을 복사해서 따로 관리하면
    → 다시 관리 지옥이 시작됩니다.

이 문제를 해결하는 개념이
프리팹 Variant입니다.


프리팹 Variant란 무엇인가?

프리팹 Variant는
기존 프리팹을 부모로 삼는 새로운 프리팹입니다.

즉,

  • 기본 구조는 그대로 유지하고
  • 일부 설정만 덮어쓰는 형태입니다.

관계로 보면 다음과 같습니다.

  • 원본 프리팹 (Base Prefab)
  • └ 파생 프리팹 (Variant)

Variant와 원본 프리팹의 차이

중요한 차이점은 이겁니다.

  • 원본 프리팹 수정
    → 모든 Variant에 반영됨
  • Variant에서 수정한 값
    → 해당 Variant에만 적용됨

그래서 공통 구조는 원본에서,
차이점은 Variant에서 관리하게 됩니다.


프리팹 Variant는 어디에서 만드는가?

프리팹 Variant는
Project 창에서 기존 프리팹을 기준으로 생성합니다.

일반적인 흐름은 다음과 같습니다.

  1. Project 창에서 기존 프리팹 선택
  2. 우클릭 → Create → Prefab Variant
  3. 새로운 Variant 프리팹 생성

이 Variant는
원본 프리팹과 연결된 상태를 유지합니다.


Variant에서 무엇을 바꿀 수 있을까?

Variant에서는
다음과 같은 요소를 바꿀 수 있습니다.

  • Inspector 값
  • 컴포넌트 설정
  • 스크립트 변수 값

단,
구조 자체를 크게 바꾸는 것은
원본 프리팹에서 하는 것이 원칙입니다.


Variant가 특히 유용한 경우

Variant는
다음과 같은 상황에서 진가를 발휘합니다.

  • 적의 난이도 단계 구분
  • 아이템 등급 구분
  • 스테이지별 오브젝트 차이

예를 들어,

  • Enemy_Base
  • Enemy_Easy
  • Enemy_Hard

이런 구조는
Variant 없이는 관리가 거의 불가능합니다.


프리팹 수정 시 주의할 점

Variant를 사용할 때
반드시 조심해야 할 점이 있습니다.

  • 씬에서 값을 바꾸는 것
  • Variant에서 바꾸는 것
  • 원본 프리팹에서 바꾸는 것

이 세 가지를
의식적으로 구분하지 않으면
“왜 이건 바뀌고 저건 안 바뀌지?” 같은 혼란이 생깁니다.


Variant 흐름을 머릿속에 정리해보자

이 강의 단계에서
가져가야 할 구조적 관점은 이것입니다.

  • 원본 프리팹: 공통 구조, 공통 규칙
  • Variant: 개별 차이
  • : 배치와 흐름

이 세 역할을 섞지 않는 것이
프로젝트 유지의 핵심입니다.


지금 단계에서 꼭 기억해야 할 것

이번 강의의 핵심은 다음입니다.

  • Variant는 프리팹의 “복사본”이 아니다
  • 원본과 연결된 상태로 관리된다
  • 차이점만 Variant에서 관리한다

이 개념이 잡히면
대규모 오브젝트 관리가 훨씬 수월해집니다.


728x90
도마2
@도마2 :: 도마의 코드노트

초보자를 위한 코딩 강의를 정리합니다. 파이썬부터 C#, Unity 게임 제작까지 차근차근 기록합니다. — 도마

목차