리눅스에서 DJMAX V 실행


요약

사실 여기에 다 정리되어 있지롱

사건의 전개

윈도우에서 144, 아니 240프레임이 나오는 게임이 리눅스에서만 돌리면 실행이 안되거나 40프레임이 나와버리거나 하는 문제가 있어서 사람들의 불만이 크다.

원인

XIGNCODE3이라는 자체 복제방지 툴에서 이상한 호출을 해대서 윈도우보다 더 자원을 잡아먹는다는 소리도 있고,

게임 자체에 동영상이 많이 들어가는데 몇몇 Wine 버전에서는 동영상 재생이 잘 안되는 것도 문제고

게임이 매 프레임마다 특정 Win32 API를 호출하는데 이게 윈도우와 Wine에서 성능 차이가 나는건지 메인 프로세스의 CPU 클럭을 잡아먹어서 프레임을 막는다던지 하는 등의 여러 문제가 논의되었고, Wine 개발자가 이 부분을 수정한 패치를 만들었지만 다른 게임에서 버그가 터져서 다시 롤백된 상황인 것으로 보인다.

그래서 어쩌라구?

그래서 저 개발자가 수정한 패치가 들어가 있는 구간의 Wine을 구해다가 써야 하는건데, 조금 널리 사용되는 GE-Proton8-4 ~ 이후 버전에선 롤백된 버전이 들어갔는지 여전히 느리다?

하여튼 될 것 같은 버전:

아니면 직접 빌드해라. 내 컴에선 GE-Proton의 호환성이 제일 좋은 편이었는데, 이걸 가져다가 필요한 커밋들만 cherry-pick해서 직접 빌드하는 것도 방법이다.

git clone --recursive https://github.com/GloriousEggroll/proton-ge-custom.git
cd proton-ge-custom
cd wine
git cherry-pick 88e9ac756ec6a86674a9f7311ac2a2c6e6e80c7c
git cherry-pick a76fadbf6e9f7d35fa7b6d8e930181903890f959

요렇게 해서 wine에 내가 원하는 패치 두개를 쏘옥 밀어넣고 README를 따라서 전체 빌드를 한번 돌리면 된다.