강제 업데이트는 설정을 항상 최신 버전을 사용하도록 설정을 해두었기 때문에 일어나는 일이니
Misaki님이 적어주신 내용을 참고하여 버전을 고정하시는 게 좋습니다.
다만 언젠가 4.0으로 넘어갈 여지가 있다면 되도록 빨리 넘어가시는 걸 권장드립니다.
3.8에서 4.0으로 넘어갈 때 하위호환성이 없는 이유는 하위호환성이 유지되지 않을만큼의 대형 업데이트가 있었기 때문입니다.
(이러한 대형 업데이트는 주기적으로 있어왔습니다)
저희 팀에서도 비슷한 이슈를 겪었고 3.7에서 4.0으로 업데이트를 하기로 결정했습니다.
기존 작업물(.skel.byte 파일)들은 CLI 툴을 제작하여 3.7에서 4.0으로 변환하는 과정을 거쳐 일괄처리했고 문제 없이 작동했습니다.
이하는 툴에 사용한 Windows Batch 파일의 코드입니다.
버전 차이나 폴더 구조 차이 등은 있어서 그대로 활용하는 건 어렵겠지만 이런 툴을 만들었구나 하는 참고용도로만 봐주셨으면 좋겠습니다.
set SPINE_DIR=C:\Program Files\Spine
set UNITY_DIR=C:\path\to\game-unity
set OLD_VERSION=3.7.94
set NEW_VERSION=4.0.64b
for /r %UNITY_DIR%\Assets\Contents\ %%i in (*.skel.bytes) do (
rename %%i %%~ni
)
for /r %UNITY_DIR%\Assets\Contents\ %%i in (*.skel) do (
"%SPINE_DIR%\spine" -u %OLD_VERSION% -i %%i -o %%~dpni.spine -r
"%SPINE_DIR%\spine" -u %NEW_VERSION% -i %%~dpni.spine -o %%~dpi -e %UNITY_DIR%\Tools\binary.json
del %%~dpni.spine
del %%i
)