개발/유니티

[유니티] 유니티 learn#2

kimchangmin02 2025. 8. 23. 12:57

타일맵이 뭐지?

 

프리팹 (Prefab): "레고 완성품 설계도"

  • 비유:
    여러분이 레고로 아주 멋진 '레고 자동차'  '레고 병사' 를 하나 만들었다고 상상해 보세요. 이 자동차는 바퀴도 있고, 운전대도 있고, 의자도 있습니다.이 설계도만 있으면, 공장에서 찍어내듯이 똑같이 생긴 '레고 자동차'를 원클릭으로 100대, 1000대 만들어낼 수 있습니다. 만들어진 자동차들은 각각 독립적으로 움직일 수 있습니다.
  • 프리팹은 바로 이 '레고 자동차'의 설계도(Blueprint) 입니다.
  • 유니티에서의 의미:
    • 대상: 캐릭터, 적, 총알, 아이템 상자 등 독립적으로 움직이고 상호작용하는 하나의 완전한 게임 오브젝트.
    • 목적: 잘 만들어진 게임 오브젝트 하나를 '재사용'하기 위해.
    • 특징:
      • 하나의 완전한 '게임 오브젝트'입니다.
      • 자체적으로 Transform(위치), Rigidbody(물리), 스크립트 등 여러 컴포넌트를 가질 수 있습니다.

타일맵 (Tilemap): "레고 조립판과 바닥 블록"

  • 비유:
    레고를 조립하려면 맨 먼저 바닥에 까는 커다란 녹색 조립판(Baseplate) 이 필요하죠? 이 조립판에는 동그란 돌기들이 격자 모양으로 나 있습니다.여러분은 이 조립판 위에 '잔디 블록'과 '흙 블록'을 착착 끼워서 길을 만들고, '물 블록'을 끼워서 강을 만듭니다. 이것은 자동차나 병사처럼 스스로 움직이는 '완성품'이 아니라, 그들이 뛰어놀 '배경' 또는 '지형' 그 자체입니다.
  • 타일맵은 바로 이 '레고 조립판' 과 같습니다. 그리고 그 위에 까는 얇고 네모난 '바닥 블록(Tile)' 들이 있습니다. (예: 잔디 블록, 흙 블록, 물 블록)
  • 유니티에서의 의미:
    • 대상: 게임의 배경, 땅, 벽, 바닥 등 움직이지 않는 거대한 지형.
    • 목적: 격자(Grid) 위에 그림을 그리듯이 쉽고 효율적으로 레벨을 디자인하기 위해.
    • 특징:
      • 하나의 거대한 '판' 위에 그림(타일)을 그리는 방식입니다.
      • 주로 시각적인 배경과 충돌 영역을 만드는 데 사용됩니다.
      • 개별 타일은 독립적인 게임 오브젝트가 아닙니다. (그래서 훨씬 가볍습니다.)

한눈에 보는 비교

구분 프리팹 (Prefab) 타일맵 (Tilemap)
비유 레고 완성품(자동차, 병사)의 설계도 레고 조립판과 바닥 블록
목적 재사용 가능한 게임 오브젝트 만들기 효율적인 레벨/배경 디자인
기본 단위 게임 오브젝트 (GameObject) 타일 (Tile)
주요 사용처 캐릭터, 적, 총알, 아이템, 장애물 땅, 벽, 배경, 함정 바닥 등 지형
특징 스스로 움직이고, 스크립트를 가짐 격자 위에 그려지며, 주로 정적임

최종 요약 (슈퍼 마리오 예시)

  • 슈퍼 마리오 게임의 땅 블록, 벽돌 블록, 물 지형 타일맵으로 만듭니다.
  • 맵 위를 돌아다니는 굼바(버섯 몬스터), 동전, 아이템 버섯은 각각 프리팹으로 만들어 배치합니다.