# 클리어 연출 및 Goal 설정 가이드

## 🎮 개요

스테이지 클리어 시 바로 넘어가는 대신, **이미지 페이드 인/아웃**과 **배경음악(BGM)** 연출을 보여주고 다음 스테이지로 이동합니다.

**구현된 기능:**
1. **Goal 배치**: 에디터에서 Goal 위치를 자유롭게 조정
2. **클리어 연출**: [게임 화면] → [페이드 인] → [클리어 이미지] → [대기] → [페이드 아웃] → [다음 스테이지]
3. **자동 진행**: Stage 1 → 2 → 3 → 4 → 스테이지 선택 순서로 자동 연결

---

## 📋 1단계: Goal 배치하기

1. **Goal 프리팹 찾기**:
   - `Assets/Prefabs/Objects/Goal` (또는 해당하는 프리팹)
2. **Scene에 배치**:
   - 원하는 위치에 드래그 앤 드롭
3. **Collider 설정**:
   - Goal 오브젝트의 콜라이더가 `Is Trigger` 체크되어 있는지 확인
   - 플레이어가 닿을 수 있는 위치인지 확인

---

## 🎬 2단계: 클리어 연출 만들기 (Canvas 설정)

각 스테이지의 `InGameUI` 캔버스에 연출용 UI를 추가해야 합니다.

1. **캔버스 설정**:
   - Hierarchy에서 `InGameUI` 캔버스 선택
   - **`ClearSequenceManager` 스크립트 추가**

2. **Fade Panel (검은 배경) 만들기**:
   - Canvas 우클릭 → UI → Image
   - 이름: `FadePanel`
   - 색상: 검은색 (Alpha 255)
   - 크기: 화면 전체 채우기 (Stretch-Stretch)
   - **중요**: 초기 상태는 끄기 (SetActive false) 또는 투명하게 하기 (스크립트가 알아서 하지만 화면 가림 방지용)

4. **Clear Image (클리어 메시지) 만들기**:
   - Canvas 우클릭 → UI → Image
   - 이름: `ClearImage`
   - **Source Image**: 'Stage Clear' 이미지 할당
   - **Image 컴포넌트 설정**:
     - **Preserve Aspect**: ✅ 체크 (중요! 비율 유지)
   - **RectTransform 설정**:
     - Anchor Presets: **Stretch-Stretch** (Alt+Shift+Click 우측 하단)
     - 이렇게 하면 화면 크기에 맞춰지되, 비율은 유지되며 남는 공간은 투명하게 처리됩니다.
   - **Hierarchy 순서중요**:
     - `FadePanel`이 위, `ClearImage`가 아래에 오도록 배치하세요.
     - (Unity UI는 아래에 있는 게 화면 맨 위에 그려집니다)
     ```
     Canvas
      ├── FadePanel (검은 배경)
      └── ClearImage (클리어 문구)
     ```
   - **초기 상태**: 끄기 (SetActive false)

4. **스크립트 연결**:
   - `InGameUI` 오브젝트의 `ClearSequenceManager` 컴포넌트에서:
     - **Fade Panel**: 방금 만든 `FadePanel` 드래그
     - **Clear Image**: 방금 만든 `ClearImage` 드래그
     - **Clear BGM**: 재생할 음악 파일 드래그 (없으면 비워두기)

---

## ⚙️ 상세 설정

`ClearSequenceManager` 인스펙터에서 연출 타이밍을 조절할 수 있습니다.

- **Fade In Duration**: `1.0` (클리어 이미지가 나타나는 시간)
- **Display Duration**: `2.0` (클리어 이미지가 유지되는 시간)
- **Fade Out Duration**: `1.0` (검은 화면으로 암전되는 시간)
- **Volume**: `1.0` (음악 볼륨)

---

## 🐛 문제 해결

**Q: Goal에 닿았는데 아무 반응이 없어요.**
- Goal 오브젝트에 `Goal.cs` 스크립트가 있는지 확인하세요.
- 플레이어 태그가 `Player`로 설정되어 있는지 확인하세요.
- Collider가 `Is Trigger` 체크되어 있는지 확인하세요.

**Q: 연출 없이 바로 넘어가요.**
- 씬에 `ClearSequenceManager`가 없으면 폴백(Fallback) 기능으로 바로 넘어갑니다. 2단계 설정을 확인하세요.

**Q: 다음 스테이지가 아니라 엉뚱한 곳으로 가요.**
- `Goal` 오브젝트의 `Next Scene Name`이 비어있으면 자동으로 다음 번호 스테이지를 찾습니다.
- 특정 씬으로 보내고 싶다면 `Next Scene Name`에 직접 이름을 적으세요 (예: "EndCredit").
