# Ep.4 — Unpack (패키징 구조 해제와 다른 툴 호환성)

https://youtu.be/T-jlxNTNUDc?si=VGjE6yuPEZcDJtZd

> **한 줄 요약**: Fast-Ref는 씬 안정성을 위해 레퍼런스 데이터를 가상의 안전 패키지로 포장해 관리합니다. 만약 사내 레거시 스크립트나 외부 플러그인이 이를 인식하지 못한다면 **Unpack** 기능을 켜서 순수한 원본 씬 구조로 임시 전개해 주면 됩니다.

---

## 1. Fast-Ref 내부의 패키징 메커니즘 이해하기

Fast-Ref는 씬 안의 레퍼런스 데이터가 변질되거나, 맥스 자체의 쓰레기 데이터 정리 프로세스(Garbage Collection) 중 유실되는 현상을 막기 위해 데이터를 특수하게 패키징(가상의 울타리에 보관)하여 관리합니다.
대부분의 일반적인 애니메이션 작업, 뷰포트 탐색, 키 프레이밍은 **Unpack을 전혀 건드리지 않고 디폴트 상태에서 완벽하게 작동**합니다.

---

## 2. Unpack이 언제, 왜 필요한가요?

프로덕션 환경에는 수많은 사내 개발 플러그인, 특정 프레임워크 스크립트, 혹은 특수한 레거시 익스포터 등이 혼재해 있습니다. 이 도구들은 오직 "정형화된 일반 3ds Max 씬 그래프 노드"만을 직접 긁어가도록 하드코딩 설계되어 있는 경우가 많습니다.

이때 Fast-Ref의 특수 패키징 울타리를 읽지 못해 외부 도구에서 에러가 뜨거나 캐릭터가 선택되지 않는 호환성 문제가 생길 수 있습니다. 이 시점에서 **Unpack On** 스위치를 사용합니다.

- **Unpack을 활성화하면**: Fast-Ref의 안전 울타리 안에 숨겨져 포장되어 있던 노드들이 **완벽한 원본 파일의 순수한 3ds Max 노드 상태로 해체되어 씬 레벨에 전개**됩니다.
- **여전히 유지되는 관리**: 신기한 점은, 노드가 씬 밖으로 일반 오브젝트처럼 노출되었음에도 불구하고 **Fast-Ref 테이블 내부적으로는 "어느 파일과 연결되어 있고, 누구의 Namespace인지"에 대한 소유 링크를 완벽히 트래킹하고 유지**한다는 점입니다.

---

## 3. Namespace와 Unpack 옵션의 상관관계

스튜디오의 파이프라인 제약에 따라 아티스트들은 아래의 3가지 핵심 설정 축을 적절히 오가야 합니다.

1. **Namespace On**: 멀티 캐릭터 배치 시 절대적으로 켜고 일해야 안전합니다.
2. **Namespace Off**: 사내의 다른 전용 도구가 콜론 접두사(`:`)를 전혀 해석하지 못할 때 끕니다. (이 경우 노드 이름이 하나로 통일되므로 멀티 캐릭터 교체 시 주의가 필요합니다.)
3. **Unpack On**: 가상 패키지 구조를 벗겨내어 외부 레거시 툴이 마음껏 본과 컨트롤러를 분석할 수 있도록 문을 활짝 열어주는 상태입니다.

---

## 💡 실무 가이드라인 정리
- 평소 작업이나 순수한 Fast-Ref 기반 파이프라인이라면 **Unpack Off 상태가 가장 안정적**이므로 그대로 둡니다.
- 회사 전용 "검사 툴"이나 "익스포트 엔진 플러그인"이 노드를 찾지 못해 비명을 지를 때만 **Unpack On**을 켜서 호환성 다리를 놔주시면 해결됩니다.

<!-- [REVIEW: legacy image - verify placement context] -->
![Unpack 기능 스크린샷](image.png)