Citra
1. 개요
오픈 소스 닌텐도 3DS 에뮬레이터. 어느 에뮬레이터나 그렇듯 게임마다 요구사양은 천차만별이고, 공식 홈페이지에서는 "실행"만을 위해 필요한 최소 사양만을 제시하고 있다.
2018년 기준으로 그래픽 처리를 GPU가 하게 되면서 기존보다 요구 사양이 많이 낮아졌다.[1] 대체로 Cemu보다 원활하게 돌릴 수 있는 게임들이 많은 편이지만, 여전히 최고 성능의 CPU로도 힘겨운 게임들이 남아 있고, 공식 홈페이지의 호환성 위키에는 각 게임이 어느 정도의 사양을 요구하는지가 대략이나마 적혀 있다.
라데온 GPU로 Citra를 돌릴 경우 지포스에 비해서 낮은 프레임을 볼 수 있는데, 그 이유는 라데온의 OpenGL 성능이 낮기 때문이다. 지속적으로 업데이트 하면서 개선되고 있으나 대부분의 게임에서 여전히 플레이 불가할 정도로 프레임드랍이 심하므로 지포스 그래픽카드로 교체하는 것이 낫다.
2. 조작법
- 조작키는 에뮬레이션 → 설정 → 컨트롤에서 바꾸면 된다.
- 듀얼쇼크나 엑박패드 등으로 플레이하려면 전용 드라이버를 설치해야 사용이 가능하다. 드라이버 설치 이후 Emulation → Configure... → Input... →Motion touch 에서 Motion을 CemuhookUDP으로 변경 후 설정할 수 있다.[2]
- 별의 커비 트리플 디럭스 등에서 필요한 3DS 시리즈 본체 기울이기를 모르는 사람이 많은데, 상단 화면에 오른쪽 마우스를 누른 상태로 드래그를 하면 된다. 왼쪽으로 기울고 싶으면 왼쪽으로 드래그, 오른쪽으로 기울고 싶으면 오른쪽으로 드래그하면 된다. 또는 옵션에서 패드 모션 인식 기능을 킨 뒤 듀얼쇼크 4를 비롯한 모션 기능이 있는 패드를 사용하면 된다. 마우스 드래그로는 플레이가 불편하기에 기본적으로는 패드 사용이 일반적이다.
- 안드로이드 버전에서는 설정을 건드리지 않아도 알아서 기기의 센서를 감지해 구동된다.
3. 타임라인
아래 타임라인은 공식 페이스북을 참조해 작성하였다.
- 2014년 12월 14일에 상용 게임 가운데 가장 먼저 젤다의 전설 시간의 오카리나 3D를 부팅하며 희망찬 2015년을 알렸다.
- 2015년 1월 4일에 시간의 오카리나 메인 화면을 표시하는 데에 성공했고, 그 이튿날에 실제 게임 플레이에 성공했다.
- 1월 말에 동굴 이야기를 어떤 중대한 버그도 없이 플레이 할 수 있게 됐다. 느린 것을 견디고 플레이 하면 엔딩을 볼 수 있다.
- 2월 말에 3DS의 시스템 메뉴와 버추얼 콘솔 게임들이 구동되기 시작했다.
- 3월 초에 OpenGL 플러그인이 시험용으로 제작되었다. OpenGL 플러그인을 써본 결과, 초당 2 프레임으로 구동되던 젤다의 전설 시간의 오카리나가 1배속 가까이로 구동되었다.
- 4월 1일에 포켓몬스터 X의 HD 구동 영상이 올라왔다. 영상으로는 검은 화면을 볼 수 있다.
- 2015년 7월 28일자 Citra 개발 진행 상황.
- 12월 30일에 포켓몬스터 X가 작동하는 영상이 드디어 올라왔다. 3DS 실기에서 추출한 세이브 파일이 있다면 인게임으로 진입 할 수 있다.
- 2016년 초에 웹사이트를 깔끔하게 단장했다. Dolphin 등 에뮬레이터들의 웹사이트와 비슷하게 블로그와 위키 등을 갖추고 진행 상황을 올리기 시작했다.
- 2016년 3월 9일에 여러 작업 계획들을 알리며 그 해 안에 정식버전 v1.0을 릴리즈 할 수 있는 것으로 전망한다고 강력히 알렸다.
- 5월 1일에 Texture Forwarding 기술을 적용해 속도가 개선되고 고해상도를 지원 할 수 있게 됐다. 자세한 내용은 링크 참조(영어)
- 5월 20일에 HLE(고레벨 에뮬레이션) 오디오 지원이 시작되었다. 기나긴 리버스 엔지니어링의 결실이다. 아직은 불안정한 점이 많지만, 일단 제대로 된 소리가 어느 정도 나게 되었다.
- 2016년 11월에 포켓몬스터썬·문을 플레이할 수 있게 되었다. 요구사양은 굉장히 높다.
- 2017년이 왔지만 2016년 3월에 알린 것과는 달리 v1.0이 나오지 않았다.
- 2017년 기준으로, 에뮬레이터의 호환성 향상을 우선과제로 삼았고, 1~2년 뒤면 충분한 호환성을 확보한 다음에 최적화 작업을 시작할 계획인 듯 했다.
- 2017년 8월에 텔레메트리 기능이 추가되었다. 이를 "개인정보 수집"으로 규정하며 Citra 팀을 비난하는 이들이 있지만, Citra 팀은 수집하는 정보의 범위가 "빌드 넘버, 컴퓨터의 사양, Citra 설정, 구동한 게임, 퍼포먼스와 플레이 시간"으로 한정되며 그 외의 정보는 수집하지 않는 것, 특히 세이브 데이터나 파일시스템 정보를 포함한 개인 정보의 수집은 절대 없다는 사실을 분명히 했다. 약속을 어긴 적도 없으며, 오픈 소스 프로젝트가 몰래 약속을 어기는 일 따위는 하려야 할 수 없는 일이다! 정 그래도 내키지 않는다면 본인이 해당 기능을 비활성화하면 그만이다. Dolphin과 같은 다른 에뮬레이터들도 비슷한 방식의 정보 수집을 하며, 개발 과정에 참고 자료로 활용하니 Citra의 사례가 특별하다고 말할 수도 없다.
- 2017년 10월에 로컬 멀티플레이어 기능이 추가되었다.
- 2018년 3월 10일에 렌더링의 대부분을 CPU가 처리하던 방식에서 GPU가 처리하는 방식으로 바꾸면서 대부분의 게임들의 프레임이 2배 가량 상승하였다. 이로써 화면 전환 시 프레임이 떨어지는 것을 제외하면 구동 가능 게임 대부분을 60 프레임으로 쾌적하게 즐길 수 있게 되었다.[3]
4. 안드로이드 버전
안드로이드 5.0 또는 그 이상의 버전이 필요하다.
4.1. 비공식 버전
weihuoya github. 2020년 6월 기준으로 꾸준히 업데이트중. PC Citra를 포팅하여 UI는 돌핀 5.0 안드로이드 프론트엔드를 기반으로 한 비공식 버전이다. 일부 게임마다 프레임치트가 존재하며, 프레임 고정 30을 해제하여 60으로 올릴시 풀 60프레임으로 구동 가능.
- 2020년 1월 13일 버전 기준으로, 갤럭시S8 엑시노스 버전에서 포켓몬스터 오메가루비를 옵션에서 기본 비활성화된 CPU JIT을 활성화한 후 약 30~60%정도 속도로 구동 가능하다.
- 2020년 2월 1일. 홍콩판 노트10(N9700) 스냅드래곤(855) 기기를 사용하여 에뮬 20200123 버전 기준으로 포켓몬 시리즈를 구동시 x1 해상도를 기준으로 프레임 20후반~30의 스피드 100% 가까운 놀라운 구동률을 보여줌 쾌적한 플레이 가능. 이외에도 다양한 게임이 호환성 문제를 타는것 말고는 대체적으로 잘 돌아감. 단 역시나 복잡한 3D 게임 같은것은 프레임이 10중반~20초반대 정도로 하락을 보였다.
- 2020년 6월 14일. 갤럭시s20 ultra (스냅드래곤 865) 기준, 20200612버전으로 구동하여 울트라썬문 해상도 x4기준 풀프레임을 유지하며 x3해상도에서 60프레임 치트 사용시 풀프레임유지가 가능하다. 단 해상도가 x3를 넘어갈경우 GPU를 거의 100%활용하기에 발열, 배터리소모가 심하다. 3D그래픽이 적은 게임의 경우 x4해상도 기준 GPU50%정도를 활용해 풀프레임을 유지한다.
- 2021년 1월 27일 버전 기준, 국내판 갤럭시S10 (엑시노스 9820)에서 포켓몬스터 울트라썬문을 해상도 x1로 돌릴 시 일부 컷씬 등의 상황을 제외하면 전투와 거리를 돌아다니는 등 대부분의 상황에서 100%에 가까운 구동률을 보여줌. 이 버전 부터 말리 최적화가 되었고 동시에 스냅드래곤 기기에선 랙이 늘어났다는 보고가 있음.
4.2. 공식 버전
공식 사이트 플레이스토어에 베타 버전이 올라와 있다. 플레이스토어 업로드 전과 달리 비공식 버전의 여러 성능향상 기능들을 흡수하여 성능이 비슷하다. 또한 인앱결제를 통해 후원할 수 있는 기능이 추가되었다.
5. 호환성 리스트
다음은 Citra에서 실행이 가능한 타이틀의 목록이다. 한국에 정식 출시된 게임을 위주로 직접 테스트한 결과만 적을 것. 그리고 비록 호환성을 기준으로 열거하였지만 모바일의 경우 이 척도와 관계없이 끊김과 발열이 무척 심해진다는 사실을 감안해야 한다. 2020년대에 들어서 나온 기종들도 이 차이는 극복하지 못하고 있다.
공식적으로 업로드되는 빌드가 아닌, 특정 게임만을 실행할 목적으로 변형한 빌드가 인터넷으로 올라오기도 한다. 공식 빌드로 아직 실행되지 않는 게임이라도 이런 비공식 빌드를 찾아보면 실행이 될 수도 있으니 조사해볼 것을 권한다. 대표적으로 포켓몬스터는 공식 빌드가 버그를 해결하기 한참 전에 핵을 통해 그 버그를 패치해 플레이 할 수 있게 만든 빌드가 인터넷으로 돌았다.
아래 리스트에 없는 게임은 공홈의 호환성 리스트를 참고할 수도 있다.
5.1. 완벽 구동
5.2. 플레이 가능
5.3. 불안정
5.4. 일부 실행 가능
5.5. 플레이 불가 수준
[1] 정확히는 하드웨어 렌더러는 이미 존재했지만 여전히 GPU 에뮬레이션의 상당 과정을 CPU가 맡아서 하고 있었는데, 그 중의 상당 부분을 GPU에게 넘겨버린 것이다. 공식 블로그 참조[2] 홈 버튼을 누르면 프리징에 걸리므로 홈 버튼은 잘 쓰지 않는 버튼으로 지정하는 편이 좋다.[3] 나아가 하스웰 i3 내장 그래픽 정도의 낮은 사양으로도 오메가루비/알파사파이어가 실기와 비슷한 수준으로 구동되는 정도로 요구 사양이 낮아졌다.[4] 문제는 한글파일 자체가 Citra의 업데이트에 대응할 수 없어서 업데이트 해서 한글파일이 먹통이 될 때마다 새 한글 파일로 갈아끼워야 한다.[5] 오히려 이 기능을 역 이용해서 더 어려운 리듬게임을 즐길수도 있다.[6] 실험 컴퓨터 사양 : i5-6770 / gtx960 / 8G.