창세기전2 스프라이트 추출 툴을 버전업했습니다.
- 꼬반
- 2016. 11. 16. 17:50
동일한 nodejs 로 작성하였으나 코드를 조금 뜯어고쳤습니다.
오랜만에 툴로 리소스를 뽑는데 뽑다보니 의문이 생겼습니다.
지난번 CITIZEN 이 순서가 미묘하게 어긋나거나 마지막 파일은 엉뚱한 이미지가 오거나.
그래서 적은 수의 (캐릭터 44개)를 몇번 돌려보니 아니!?
미묘하게 결과값이 틀린걸 확인했습니다.
이미지 순서같은게 돌릴때마다 약간 차이가 나더군요.
쉣..
확실히 V1 버전은 nodejs 에 대해 막 공부하기 시작했을때 작성한 코드라
맘에 안들어도 일단 돌아가니.. 라는 마음으로 내뒀는데.
제대로 동작도 안된다는 사실을 깨닫고는.. 혼자 데꿀멍 했습니다 ㅠㅠ
하긴 코드짠 사람이 오랜만에 코드를 보니 이게 뭐지.. 하는 코드가
코드일린 없겠죠.
그래서 어제오늘 날잡고 뜯어고쳤습니다.
코드들이 새로 짰다고 최적화 되거나 한것은 아니고..
염두에 둔건 추후에 다시 봐도 금방 이해할 수 있도록 작성하고 주석을 달았으며
(왜 전엔.. 주석도 별로 안달았는가!!)
콘솔창에서 나오는 화면을 정돈해서 조정값을 금방 조정하게 수정했습니다.
그리고 파일에서 스프라이트를 분리하는 부분은 재귀 함수로 수정해서 훨씬 동작이 깔끔해졌습니다.
문제의 스프라이트 파일을 bmp로 저장하는 부분은 해당 1개의 파일만 변환하도록 수정하고
그걸 쉘 스크립트로 돌려버렸습니다. 시간은 더 걸리는데.. 결과값이 더 만족스러우니 이해할 수 있습니다.
(어차피 시간 오래걸리는건 3552개나 되는 CITIZEN 밖에 없습니다. ㄷㄷ)
그리고 CITIZEN을 돌려보니 잘나오네요. 다만 버그라고 할지.. 아직 중간중간 제대로 저장이 안된
bmp 파일이 나옵니다. 그건 해당 번호만 다시 돌려주면 잘 저장은 됩니다. (흠)
아래는 비교 화면 입니다.
V1 - 스프라이트 분할 |
V2 - 스프라이트 분할 |
V1 - 이미지 변환 후 저장 |
V2 - 이미지 변환 후 저장 |
이상입니다. 흠. 이렇게 비교해놓으니 별 차이가 없는거 같기도...
하지만 개인적으로는 맘에드니 뭐 괜찮겠죠.
그리고 V1으로 뽑았던 스프라이트는 다 폐기하고 다시 작업해야겠네요 ㅠㅠ 꽤 많은데 ㅠㅠ