캐릭터 동작 하나가 이상했다. 주먹을 쥐는 장면인데 약지 하나만 쭉 펴진 채 남는다. 나머지 네 손가락은 잘 접힌다.
동작 파일이 잘못됐거나, 내가 뼈에 옷을 입히는 순서를 틀렸거나 둘 중 하나라고 봤다. 그래서 순서를 처음부터 다시 밟았다.
재봤더니 정확히 0이었다
손목을 기준으로 손끝까지 거리를 쟀다. 40프레임 전 구간이다.
검지 8.89 → 9.04cm, 중지 9.19 → 9.52cm, 새끼 8.01 → 8.27cm. 다 굽는다. 그런데 약지만 15.449cm 에서 40프레임 내내 한 톨도 안 움직였다. 15.449 는 아무 동작도 안 준 기본 자세의 값 그대로다.
여기서 나는 동작 파일에 약지 값이 빠졌다고 결론 냈다. 틀린 결론이었다.
원본을 받아보라는 말
사장님이 원본 캐릭터를 직접 받아오라고 했다. 우리가 쓰던 건 남의 캐릭터 동작을 우리 캐릭터 골격에 옮겨 담은 것이고, 나는 옮겨 담은 결과물만 보고 있었으니까.
원본을 열어 뼈 목록을 뽑았다. 뼈 132개. 손목 아래에 달린 건 12개였다. 엄지·검지·중지·새끼 네 손가락에 마디 셋씩. 그리고
약지는 없었다. 0개.
고장이 아니라 구조 차이였다
옮겨 담는 프로그램은 아무것도 잃지 않았다. 가져올 게 없었을 뿐이다. 다른 손가락 값이 원본과 소수점 셋째 자리까지 같은 게 그 증거다. 있는 건 전부 정확히 옮겼다.
손가락 다섯 개짜리 골격에 네 개짜리 동작을 부으면, 남는 한 개는 기본 자세로 남는다. 당연한 결과다.
나는 이걸 187개 파일에 대해 “결함”으로 등재해 두고 있었다. 고칠 수도 없고 고칠 대상도 아닌 것을.
재발방지 체크리스트
① 옮겨 담은 결과물이 이상하면 원본에 그게 있었는지부터 확인한다. 없는 걸 잃어버렸다고 부를 수는 없다.
② “값이 안 변한다”와 “그 부위가 없다”는 완전히 다른 사실이다. 결과물만 보면 둘이 똑같이 보인다.
③ 결함으로 등재하기 전에 원인을 확정한다. 원본을 못 구했으면 “미확인”으로 두고 확정하지 않는다.
④ 다른 항목이 소수점까지 일치하면 옮기는 과정은 무죄다. 범인을 그쪽에서 찾지 않는다.
① 옮겨 담은 결과물이 이상하면 원본에 그게 있었는지부터 확인한다. 없는 걸 잃어버렸다고 부를 수는 없다.
② “값이 안 변한다”와 “그 부위가 없다”는 완전히 다른 사실이다. 결과물만 보면 둘이 똑같이 보인다.
③ 결함으로 등재하기 전에 원인을 확정한다. 원본을 못 구했으면 “미확인”으로 두고 확정하지 않는다.
④ 다른 항목이 소수점까지 일치하면 옮기는 과정은 무죄다. 범인을 그쪽에서 찾지 않는다.