K-Parser와 Spriter를 이용한 사용자 정의 애니메이션 만들기
준비물
- uTinyRipper: 산소미포함 v466654까지 지원한다.
- 산소미포함 v466654
- K-Parser: JRE 11 필요
- Spriter
1. uTinyRipper로 sharedassets0.assets 뜯기 (이 때 다른 assets들도 같은 폴더 안에 들어있어야 함)
2. .png, _anim.bytes, _build.bytes 파일을 폴더 안에 넣고 kparser.jar을 그 상위 폴더에 배치
3. 디컴파일: 여기에 명령창 열기하고 'java -jar kparser.jar scml png경로 build경로 anim경로' 입력
4. Spriter로 scml 수정 (여기서 build, anim를 수정할 수 있음, 전 하도 강종돼서 Notepad++로 했어요.)
- png = 쪼갠 이미지들
- build: height(이미지 높이), id(번호, 0부터 시작), name(이미지 이름), pivot_x(앞뒤 좌표), pivot_y(잘 모름), width(이미지 너비)
ex) <file height="108" id="0" name="hair_034_0" pivot_x="0.5529807" pivot_y="0.7295408" width="130"/>
- anim: 애니메이션
5. 컴파일: 여기에 명령창 열기하고 'java -jar kparser.jar kanim scml경로' 입력
Q1. K-Parser를 사용하면 main 어쩌고하는 오류가 뜨면서 png파일밖에 생성이 안돼요.
A1. 저도 이 오류를 겪고 나눠서 작업해봤는데 mouth(입모양)에서 오류가 일어나더라고요. 작은 이미지가 오류의 원인 같습니다.
A1. 폴더명이 한글일때도 이 오류가 발생한 적이 있어요.
Q2. 컴파일했는데 이미지가 이렇게 개박살났어요.
A2. scml파일을 수정하지 않았거나, 잘못 수정했을 경우입니다. 알맞게 수정하면 됩니다.
Q3. Spriter가 계속 꺼져요. / Spriter 어떻게 사용해요?
A3. 저도 Spriter를 사용하는데 계속 꺼져서 Notepad++로 수정했습니다.
Q4. 컴파일했는데 일부 이미지가 날아갔어요.
A4. cmd창에 alias가 있는지 확인해보세요. 모양은 같은데 이름만 다를 경우 이렇게 됩니다.
그리고 이렇게 되면 게임에서 제대로 나타나지 않으니 둘 중 하나를 포토샵으로 수정하여 다시 컴파일하세요.
Q5. 분명히 순서 맞췄는데 이상해서 다시 디컴파일 해보니 순서가 바뀌어있어요.
<file height="74" id="0" name="hair_034_0" pivot_x="0.5450237" pivot_y="0.71308726" width="105"/>
<file height="60" id="1" name="hair_034_1" pivot_x="0.5618557" pivot_y="0.684969" width="97"/>
<file height="77" id="2" name="hair_034_2" pivot_x="0.6" pivot_y="0.6826299" width="80"/>
<file height="77" id="3" name="hat_hair_034_2" pivot_x="0.6" pivot_y="0.6826299" width="80"/>
<file height="73" id="4" name="hat_hair_034_0" pivot_x="0.5393808" pivot_y="0.7271756" width="108"/>
<file height="59" id="5" name="hat_hair_034_1" pivot_x="0.5484291" pivot_y="0.69658613" width="93"/>
A5. 저도 원인을 모르겠습니다.
다시 디컴파일해서 scml을 보면 순서가 어떻게 바뀌어있는지 확인할 수 있습니다. 그 순서를 토대로 png 파일을 수정하면 됩니다.