문서의 을 확인하세요.
레딧의 팬이 제작한 로고. 공식 로고는 아니다.[1] |
공식 홈페이지 |
GBATemp |
공식 레딧[2] |
최신 버전: 2.2 |
1. 개요
Cemu는 오픈 소스 Wii U 에뮬레이터이다.[3]신 버전 업데이트 간격은 대체로 14일 ~ 1달 정도이며, 기준 시각은 중부 유럽시 기준이고, 패트리온 후원자에 한하여 업데이트를 1주일 앞서 제공한다. 여기서 피드백을 받은 다음 최종 버전을 일반에 공개한다.
2. 역사
권장 시스템 사양 | |
OS | Windows 7 이상 64bit OS[4] |
RAM | 최저 4 GB, 권장 8 GB 이상[5] |
GPU | OpenGL 4.1 Vulkan API 이상 지원하는 NVIDIA, AMD GPU (4.6이상 권장)[6] |
Wii U가 출시된 지 4년도 안 된 시점에 공개되어 놀랍다는 반응이 많다. 당연하다면 당연한 것이 Wii U의 프로세서 구조는 닌텐도 게임큐브와 Wii에서 크게 달라진 점이 없다. 기껏해야 코어 수와 오버클럭, 공정개선 뿐이었으니 2세대 전 기술을 답습하고 있던 셈. 어찌되었든 공개된 지 1년도 채 되지 않아 플레이 가능한 게임들이 생겨 Wii U는 "아직 에뮬레이터가 없는 기종들" 목록에서 벗어났다.
초기에는 클로즈드 소스로 Exzap 1인 체제로[8] 개발했었는데, 개발자는 '고정된 멤버들끼리 클로즈드 소스로 개발하는 것이 오픈 소스보다 용이하다. 아는 사람들끼리 팀을 모아 개발하고 있다. 또한 개발의 방향을 잡기가 힘들다는 문제도 있다. 물론 개발을 주도하고 싶다거나, 아무 기여도 없이 소스 코드만 가져가는 사람들이 싫다거나, 오픈 소스가 아닌 에뮬레이터는 망한 것이라는 말에 반박하고 싶다거나와 같은 사소한 개인적인 이유도 있다. 그리고 만약 CEMU의 개발이 오랫동안 지연되거나 그만두면 오픈 소스화 할 것이다.'라고 했다.#
2022년 8월, 버전 2.0의 발표와 함께 오픈 소스로 전환하였다. 이와 함께 리눅스용이 첫 출시 되었다. Github 페이지 2.0 발표 및 오픈 소스화 발표를 고지한 글
Wii U 독점작들이 거의 다 Nintendo Switch로 이식되었기 때문에 사용량이 적은 에뮬레이터라 개발이 상당히 더딘 편이였으나 2024년, 대표적인 Nintendo Switch 에뮬레이터인 yuzu, Ryujinx가 닌텐도에 의해 중단되면서 Cemu 개발이 활발히 이루어지게 되었다.
2024년 9월, Android 버전의 개발이 발표되었다. # Windows on ARM에서는 구동 불가능하고 macOS에서는 로제타를 통해 돌아갔는데 ARM 기반인 Android 버전이 개발되면서 데스크탑 버전도 개선될 가능성이 높아졌다.
macOS 버전은 그래픽 API가 다른 관계로 그래픽 버그나 퍼포먼스 이슈가 많았지만 2024년 10월, Metal API를 지원이 발표되었다. #
3. 기능
최신 에뮬레이터답게 강력한 기능들이 많으며 특히 유저 MOD에 강점을 보인다. 타 에뮬과 달리 상태 저장은 지원하지 않는다.- 그래픽 팩을 이용해 다양한 그래픽 옵션을 변경할 수 있다. 일반적으로 렌더링 해상도 변경이나[9] 게임에 따라서 고해상도 그림자, 커스텀 안티에일리어싱, 프레임레이트 제한 해제, 그 외의 다양한 설정이 가능하다.[10]
- 소프트웨어 업데이트와 DLC를 정식 지원한다.(1.7.3 이상)
- amiibo도 지원한다. 그 아미보에 대한 .bin 파일을 갖고 있다면 스캐닝이 가능하다.
- 온라인 에뮬레이션을 부분적으로 지원한다. Wii U 온라인은 DS/Wii와는 달리 본체 ID 확인을 거치며[11], 사설 서버 자체를 지원을 안 해서 플레이하려면 실제 Wii U 기기로부터 추출한 ID를 이용해 닌텐도 서버에 접속해야 한다. 따라서 닌텐도로부터 계정 차단의 가능성도 감수해야 한다. 2024년 3월에 닌텐도 네트워크가 서비스를 종료했으므로 이 기능은 없는 기능이 되고 말았다.
- Wii U 실기가 없어도 로컬 멀티플레이를 지원하는 게임을 온라인으로 플레이하는 것은 가능하다. 슈퍼 스매시브라더스 for Wii U나 뉴 슈퍼 마리오브라더스 U 등의 게임을 코옵 모드나 대전 모드로 플레이가 가능하다.
- 1.11.3 빌드를 시작으로 (트리플 코어인) Wii U PPC를 멀티스레드로 분할처리 구현하는 것을 기초적인 레벨로 지원한다. 기존의 싱글 코어 모드로는 3개 PPC를 전부 1개 스레드 내에서 처리하고, 듀얼 코어 모드는 메인 1번 PPC를 한 스레드/0번 2번을 한 스레드로 분할해서 처리하며, 트리플 코어 모드로는 각 PPC를 한 스레드마다 배정한다. 아직 초기단계라 멀티스레드 모드는 (기존 모드에 비해) 안정성이 떨어질 수도 있으므로 좀 더 테스트 후 사용할 것. 비교 영상
- 1.16.0 빌드부터 Vulkan API를 지원한다. OpenGL보다 더 빠른 프레임을 기대할 수 있고, 라데온에서 성능 향상이 되었으며 셰이더 로딩 개선으로 요시 울 랜드를 더욱 원활하게 즐길 수 있다. 그런데 영 제로 누레가라스의 무녀가 실행불가로 바뀌었다.(...) 아직 불안정한 기능이다.
3.1. 조작 환경
Wii U 게임패드, Wii U 프로 컨트롤러, Wii U 클래식 컨트롤러 에뮬레이팅, 위모트 및 눈차크 환경을 제공한다.[12]1.9 업데이트 이후부터 입력장치가 대폭 개선되었다. 우선 입력 장치로는 Keyboard, Xinput(Xbox 컨트롤러 등), DirectInput(듀얼쇼크, 8BitDo 등) 가 있으며 마이크 기능을 지원한다. 최대 8개의 컨트롤러를 설정 가능하며, Cemuhook을 사용하면 모션 컨트롤도 지원한다. Betterjoyforcemu를 설치하면 스위치 프로콘을 지원하며, 모션 컨트롤 역시 완벽 지원한다.
물론 그러한 기능을 원하지 않다면 기존의 입력 방법을 유지할 수 있다. 마우스로 Wii U 게임 패드의 고유 기능인 터치나 자이로센서를 대신할 수 있으며,(클릭이 화면 터치, 오른쪽 버튼 누른 채로 드래그 및 휠 회전이 자이로센서 기능[13]) 문자 입력의 경우 키보드로 할 수 있다.[14] 또한 게임 패드 화면과 TV 화면 전환 기능의 경우 키보드의 Tab 키를 누르는 동안 전환/Ctrl+Tab으로 토글이 가능하며 1.9.1부터 게임패드의 세컨드 스크린을 띄울 수 있는 기능이 추가되었다.
3.2. 온라인
1.11.0 버전에서 일부 게임들에 한해 온라인 기능 지원이 시작되었다. # Wii U의 온라인 서비스는 닌텐도의 서버를 거쳐 이루어지기 때문에 이용을 위해서는 실제 Wii U 하드웨어에서 자신의 닌텐도 계정정보를 직접 덤프해야 한다. 다만 닌텐도에서 계정 차단을 당할 가능성이 있다.4. 호환성
문서 참조.5. 주의점 및 팁
프로그램을 구동하려면 msvcr110.dll 파일이 필요하다는 메시지가 뜨기도 하는데 이 경우는 Microsoft Visual C++(2012)가 설치되지 않았기 때문이다. Microsoft Visual C++는 꼭 Cemu뿐만이 아니라도 각종 수많은 응용 프로그램[15]을 실행하기 위해 필요한 것이므로 아직 설치가 안 되어있다면 마이크로소프트 공식 홈페이지에서 필히 설치하도록 하자.공유 가능한 셰이더 캐시 기능을 사용하는 에뮬레이터로, transferable shader cache는 실행하는 하드웨어나, GPU의 드라이버 버전, Cemu의 버전에 무관하게 호환된다.
게임 파일 형식에 따라[16] 게임 실행에 실패하는 경우가 있는데, 이 때는 Cemu 폴더 안에 있는 keys.txt를 연 다음,[17] "541b9889519b27d363cd21604b97c67a # example key"로 되어있는 부분을 "D7B00402659BA2ABD2CB0DB27FA2B656 # Wii U Common Key"로 덮어쓰고, 아랫줄에 자신이 실행하고 싶은 게임의 타이틀 키[18]를 적어넣어야 한다.
# this file contains keys needed for decryption of file system data (WUD/WUX)
# 1 key per line, any text after a '#' character is considered a comment
# the emulator will automatically pick the right key
D7B00402659BA2ABD2CB0DB27FA2B656 # Wii U Common Key
36262B5F49C69164E3BE2BB87C9922A7 # Wii U Common Key
A851D78AB8F0A6FE1E93CFCEAF99A179 # Wii U Common Key
게임 타이틀 키 # 게임 제목
이런 식으로 하면 된다. 귀찮으면 위 내용을 통째로 복사해서 key 파일에 붙여넣어도 상관 없다. 반드시 한 줄에 하나씩 쓰도록 하고, # 뒤는 프로그램이 인식을 안 하니 게임 제목을 적어서 구분을 편하게 하자. 앞서 얘기한 대로 WUD 파일에서 데이터 파일을 추출하면 이런 절차가 필요 없으니, 용량도 줄일 겸 추출해서 쓰자.
이 에뮬레이터의 업데이트는 파일 형식으로 제공하지 않기 때문에, 직접 새 버전의 Cemu를 내려받은 뒤 거기에 있는 Cemu.exe 파일을 기존의 Cemu.exe 파일에 덮어씌우고, precomplied 파일에 있는 셰이더 캐시를 비워줘야 한다. Cemu 전체를 바꿔버리면 세이브 파일들이 사라지니 주의.
프로콘 써드파티 컨트롤러의 경우 Xinput모드가 아니라 프로콘 모드로 연결해야 자이로 기능이 활성화된다. 이는 스팀등 다른 게임들도 마찬가지.
6. Cemu Hook
Rajko Stojadinovic라는 개발자가 만든 Cemu Hook이라는 인젝터 형식의 비공식 플러그인이 존재한다.# 초기에는 타이틀별로 존재하는 이벤트 동영상 등을 (Cemu에 자체적으로 구현하기에는 애매하기에 별도의 라이센스나 법적인 이슈 없이) 디코딩하기 위해 시스템 코덱을 불러오는 목적으로 개발되었지만, 점차 CEMU의 에뮬레이션 구현에 도움이 될 만한 개발참여나 실험적인 기능의 선탑재등을 거치면서 사실상 커뮤니티 상에서는 공식이나 다름 없이 인정되며 해당 개발자는 비공식적이나마 특별고문 비슷한 형태로 위촉(?)되어 있는 상태로 개발에 도움을 주고 있다.Cemu가 2.0에서 오픈 소스로 변경되면서 공식적으로 Deprecated 되었다.
6.1. 추가 기능들
- h264 모둘 구현으로 실기와 같은 이벤트 영상 디코딩을 CEMU내부에 안정적으로 직접 구현
- 외부 컨트롤러 입력소스를 CEMU로 오버라이드해서 듀얼쇼크3/4등의 모션센서 값을 사용해 실제 WiiUGamepad와 같은 자이로 적용 가능.[19]
- 로드 타임 동안 임의의 코드나 데이터를 (개발하고 공유가능한) 그래픽 팩 기능처럼 실행할 수 있는 기능 추가
- PCSX2 플러그인처럼 코어에 존재하지 않는 별도 기능의 추가 가능
7. 같이보기
- Decaf라는 또 다른 Wii U 에뮬레이터가 개발 중이다. CEMU와는 다르게 오픈 소스이며, 게임 패드 화면을 따로 출력하는 기능이 있다.[20] 뒤늦게 젤다 야숨 부팅 등의 진척이 있으나 아직은 시동이 걸릴 시기는 아니다.
7.1. 한글화
- DuckStation, PCSX2 등의 한글화를 진행한 Hack茶ん이 또 다시 작업한 한글화...
- 현재 2.0-48 이상의 시험판부터 제대로 한글화가 적용이 되고 있다.
8. 관련 문서
[1] 한 팬이 만든 비공식 로고로, 현재 공식 레딧에서는 이 로고를 메인 로고로 쓰고 있다.[2] 홈페이지가 상당히 간소한 관계로 이 사이트가 유저들간의 커뮤니티 역할을 한다.[3] 첫 번째 Wii U 에뮬레이터이자, 첫 번째 8세대 게임기 에뮬레이터이기도 하다.[4] Microsoft Visual C++ 2015 X64 런타임 요구[5] 셰이더 캐시에 따라 RAM 점유량이 늘어날 수 있다. NVIDIA GPU에서는 셰이더당 메모리 점유량이 상당하기에 타 타이틀에 비해 압도적으로 대량의 복잡한 셰이더를 구축해야 하는 일부 타이틀에서 폭발적으로 메모리를 점유하는 문제가 있다. 387.92 드라이버 업데이트 이후 30% 정도 감소했지만 여전히 AMD GPU에 비해 점유량이 비교적 크며. 향후 드라이버 개선으로 줄어들 여지가 있다고 한다.[6] 인텔 내장 GPU는 공식적으로 지원하지 않으며 인텔의 제품군 세대간 차이도 크며 드라이버 지원도 부족한편인데다 특성상 드라이버 개선 적용텀도 길기 때문에, 일부 초소형/휴대용 인텔 폼팩터 기기 위주로 테스트하는 유저들간에만 연구되고 있다.https://docs.google.com/spreadsheets/d/1xQoAemuSdU2HBukt8vetONY4scKKfWEc0iM7WBB7DBc/edit 위의 인텔 GPU 호환성 리스트 참조.[7] 재미있게도, Dolphin이 최초로 공개한 영상 또한 바람의 지휘봉이었다.[8] 원래 Petergov를 포함해서 2인 체제였지만 후술할 버전 2.0 발표 글에 따르면 Petergov는 2022년 초에 다른 프로젝트를 시작하면서 그만뒀다고 한다.[9] Cemu는 대부분의 에뮬레이터와 달리 내부 옵션으로 해상도 변경을 지원하지 않는다.[10] 수동으로 따로 그래픽 팩을 만들어서 수정하거나 커뮤니티 공식 그래픽 팩을 사용하면 된다.[11] DS와 Wii는 사설 서버를 쓰면 본체 ID를 확인시킬 필요가 없다.[12] 게임에 따라 지원하는 컨트롤러가 다르니 주의해야 한다.[13] 근데 문제가 얘가 뉴슈마U 한정으로 왼쪽으로 회전하질 못한다(...). 이건 8-성을 플레이할 때 큰 문제가 된다.[14] 한/영 전환을 안 해놓으면 인식을 못하니 반드시 영어로 설정해 두자.[15] 게임이나 프로그램 설치할 때 자동으로 설치되는 경우가 많아서 알게 모르게 이미 설치되어있는 경우도 많다.[16] 게임 파일 형식이 WUD나 WUX인 경우이다.[17] CEMU를 실행 하면 자동 생성된다.[18] 구글에서 쉽게 구할 수 있다.[19] 해당 웹사이트의 가이드 참조.[20] 근데 CemU도 언젠가부터 게임 패드 화면 보기 기능이 생겼다.