# ActorCore Motion Batch Import `/home/dal4segno/다운로드/Motion*`처럼 외부에서 받은 ActorCore 계열 FBX를 프로젝트에 일괄 import하기 위한 절차입니다. ## 목적 - 정상 ActorCore 101본 구조는 기존 `ActorCoreAvatar`를 `Copy From Other Avatar`로 적용합니다. - `RootNode_0`, `CC_Base_BoneRoot`, `RL_BoneRoot` 같은 extra root/보조 본이 섞인 FBX는 Blender에서 정상 ActorCore 101본 구조로 정규화합니다. - Unity에서는 정규화된 FBX를 `Create From This Model`로 import해 유효한 Humanoid Avatar와 `humanMotion` 클립을 생성합니다. - 0프레임 `T-Pose` take는 제외하고 실제 모션 클립만 남깁니다. ## 1. Blender 정규화와 manifest 생성 Unity 프로젝트 루트에서 실행합니다. ```bash python3 Tools/Blender/actorcore_motion_batch_import.py \ --source-glob "/home/dal4segno/다운로드/Motion*/**/*.fbx" ``` 기본 출력 위치는 `Assets/External/Animations/ActorCore/MotionBatch_YYYYMMDD`입니다. 같은 이름의 폴더가 이미 있으면 `_1`, `_2` suffix가 붙습니다. 필요하면 batch 이름을 직접 지정할 수 있습니다. ```bash python3 Tools/Blender/actorcore_motion_batch_import.py \ --source-glob "/home/dal4segno/다운로드/Motion*/**/*.fbx" \ --batch-name MotionBatch_DrogCandidates ``` 변환 없이 계획만 확인하려면 다음처럼 실행합니다. ```bash python3 Tools/Blender/actorcore_motion_batch_import.py \ --source-glob "/home/dal4segno/다운로드/Motion*/**/*.fbx" \ --dry-run ``` 스크립트가 생성하는 manifest는 `_actorcore_motion_import_manifest.json`입니다. 이 파일에는 원본 경로, 복사된 asset 경로, sha256, 처리 방식(`copy` 또는 `create`), 제거된 본 목록이 기록됩니다. ## 2. Unity import 설정 적용 1. Unity Editor에서 play mode가 꺼져 있는지 확인합니다. 2. Project 창에서 생성된 `_actorcore_motion_import_manifest.json`을 선택합니다. 3. 메뉴 `Tools/Animation/Apply ActorCore Motion Batch Import Settings`를 실행합니다. 4. 완료 후 Unity Console에 오류/경고가 없는지 확인합니다. 메뉴는 manifest의 `unityImportMode`를 기준으로 다음을 적용합니다. - `copy`: `Humanoid / Copy From Other Avatar / ActorCoreAvatar` - `create`: `Humanoid / Create From This Model` `copy` 적용 후 Unity가 유효한 `humanMotion` 클립을 만들지 못하면 자동으로 `Create From This Model`로 fallback합니다. ## 검증 기준 성공 조건은 다음과 같습니다. - `Armature` extra transform이 없습니다. - `root`가 FBX 루트 오브젝트 바로 아래에 있습니다. - `AnimationClip.humanMotion == true`인 실제 모션 클립이 1개 이상 있습니다. - `create` 모드 파일은 valid + human Avatar를 자체 sub-asset으로 가집니다. - Unity Console에 import warning/error가 없습니다. ## 주의 - 이 도구는 원본 다운로드 폴더의 FBX를 수정하지 않고, 프로젝트 하위 새 batch 폴더에 복사한 파일만 정규화합니다. - 기준 rest skeleton은 기본적으로 `Assets/External/Animations/ActorCore/orc-jog.fbx`를 사용합니다. - ActorCore와 다른 본 이름 체계를 가진 FBX는 자동 정규화가 실패할 수 있습니다. manifest에서 `unityImportMode: skip`과 오류 메시지를 확인하세요.