류진x 개발진은 여름을 맞아 2020년 봄 변경점을 소개했습니다. 그래픽 문제 해결, 호환성 향상 등입니다.
GPU 에뮬레이션 개선
1. 슈퍼 스매시 브라더스 얼티밋 T 자세
다른 에뮬레이터인 유즈 역시 겪은 문제로 적절한 애니메이션이 없어 캐릭터가 T 자세로 렌더링되는 문제입니다.
gdkchan이 애니메이션 컴퓨팅 셰이더에 버그가 있는 걸 알아채고 해결했습니다.
2. 일부 텍스처 손상
애스트럴 체인은 작년부터 실행할 수 있었지만 텍스처 문제가 있었습니다.
일부 텍스처를 잘못된 메모리 위치에서 불러와 생기는 문제였습니다.
NVN 코드를 리버스 엔지니어링하고 손 좀 봐서 해결했습니다.
3. 텍스처 버퍼
언리얼 엔진 4에서 모델 애니메이션에 사용되는데 이게 제대로 안 되면 모델이 렌더링 되지 않습니다.
언리얼 엔진 4로 만든 칼리굴라 이펙트: 오버도즈 스위치판에서 문제를 볼 수 있습니다.
아, 색상이 반전되는 건 OpenGL이 BGRA 텍스처를 지원하지 않아서 생기는 문제입니다.
4. 조건부 렌더링
조건에 따라 렌더링을 활성화/비활성화하는 기능입니다.
시야 밖 오브젝트 등 GPU가 중요하지 않은 걸 렌더링하지 않게 하여 성능을 높이는 최적화 기능입니다.
보통은 이를 지원하지 않아도 문제가 없지만 슈퍼 마리오 메이커 2, 모여봐요 동물의 숲 등 일부 게임에서는 문제가 됩니다.
초기에는 gdkchan이 구현했고, Riperiperi가 최적화하여 슈퍼 마리오 오디세이, 스플래툰 2 등에서 성능을 높였습니다.
5. 깊이 제한
GPU에서 깊이 값을 지정한 범위로 제한하는 기능입니다. Mageven이 이를 추가했고, 젤다의 전설: 브레스 오브 와일드 등의 그래픽 문제를 해결했습니다.
6. 셰이더 보간 개선
류진x는 이 기능이 제대로 되지 않아 모여봐요 동물의 숲 등 일부 게임에서 문제가 있었습니다.
사진에서처럼 일부 각도에서는 입자가 렌더링되지 않습니다.
동물의 숲 외 다른 게임도 관련 문제가 해결되었습니다. gdkchan 덕분입니다.
7. 페이스 컬링
가장 눈에 띄는 버그 중 하나로 제노블레이드 크로니클스 2, 디스가이아 5 컴플리트 등에서 보입니다.
깊이 파고든 끝에 gdkchan이 원인을 찾아 해결했습니다.
8. 바인드리스 텍스처
GPU에 등록된 모든 텍스처를 셰이더에 쓸 수 있는 기능입니다.
에뮬레이터에서 지원하는 건 문제가 많지만, 메트로 2033 리덕스나 스파이로 트릴로지 등은 그렇게 안 해도 가능했습니다. 완전하게 플레이할 수는 없지만 이제 렌더링은 가능합니다.
9. 섀도우 클리핑
슈퍼 마리오 오디세이나 암즈 등에서 그림자가 이상하게 나타났습니다. 위 사진처럼요
이제 섀도우클리핑을 지원해 그림자를 제대로 표현합니다.
10. 기타 게임 문제 수정
샨테와 일곱 세이렌은 타이틀 화면에 진입할 수 없는 문제가 있었습니다. GPU 문제로 밝혀졌습니다. 컷신이 사라지긴 했지만 해결했습니다.
제노블레이드 크로니클스: 디피니티브 에디션은 스텐실 텍스처가 누락되어 검은색으로 나오는 문제가 있었습니다. 해결하긴 했지만 아직 다른 버그가 있습니다.
요괴 워치 4와 환영이문록#FE도 문제가 있었으나 해결했습니다.
CPU 에뮬레이션 개선
1. FMAXNMV 명령
64비트 ISA 지원은 꽤 완벽한 편인데 간혹 문제가 있습니다. 일부 게임은 아예 실행할 수가 없었죠.
월드 오브 파이널 판타지 맥시마, 그리드 등 몇 가지 게임에서 필요한 FMAXNMV가 문제였고 LDj3SNuD가 노력한 끝에 이를 구현하여 게임을 플레이할 수 있습니다.
2. PPTC
PPTC는 'Profiled Persistent Translation Cashe'의 줄임말입니다.
대부분의 최신 에뮬레이터는 대상 CPU가 이해할 수 있는 코드로 코드를 '리컴파일'해 직접 실행하는 식으로 성능을 높입니다. CPU 사이의 코드를 효과적으로 변환하기 때문에 '번역'이라고 부르는 거죠.
이 새로운 기능은 만든 코드를 디스크에 저장하여 다음에 실행할 때 리컴파일하지 않아서 상당한 시간을 절약할 수 있스니다. 게임 로딩 속도를 정말 빠르게 할 수 있죠.
LDj3SNuD이 오래 전부터 만들기 시작해 구현했습니다. 자세한 정보는 여기를 참고하세요.
HLE 개선
1. 커널 메모리 할당 버그
사용 가능한 모든 메모리를 고려하지 못하는 버그가 있었습니다. 그래서 메모리를 더 쓸 수 있는데도 메모리가 부족하다고 안 되는 경우가 있었죠. 현재까지 이 문제는 슈퍼 스매시 브라더스 얼티밋에만 영향이 있습니다.
gdkchan이 해결했습니다.
2. GPU 동기화포인트
동기화포인트(Syncpoints)는 'Synchronization points'의 줄임말입니다.
CPU와 GPU 사이, 혹은 GPU에서 작업을 동기화하는데 사용하는 방법입니다.
개념은 간단합니다. 각 작업에 계속 증가하는 숫자를 할당합니다. 작업이 완료될 때마다 GPU는 동기화포인트 값을 늘립니다. 그러면 포인트만 봐도 작업을 완료했는지 알 수 있죠.
Thog가 구현했고, 적절하게 돌아가면서 많은 게임의 결함을 줄였습니다.
3. 서페이스 플링거 재작성
서페이스 플링거는 이미지를 표시하는 서비스입니다. 본질적으로 GPU가 만든 최종 이미지를 모니터 화면에 표시하기 위해 게임이 사용하는 서비스지요.
프레임레이트 잠금과 플리핑, 스케일링 등의 기본적인 변환도 할 수 있습니다.
이전에는 적절한 프레임 잠금이 없는 등 몇 가지 문제가 있었는데 가장 큰 건 슈퍼 스매시 브라더스 등의 일부 게임에서 화면이 깜빡이는 문제였습니다. 그때문에 게임을 플레이할 수가 없었죠.
Thog 덕분에 문제는 해결되어 이제 깜빡이지 않습니다. 같은 문제를 겪는 태고의 달인도 해결되었는데 이 게임은 류진x가 모션 컨트롤을 지원하지 않아 아직 플레이할 수 없습니다.
4. 업데이트와 DLC
류진x는 게임 업데이트 지원이 부족했는데 Xploitr이 Libhac를 사용해 구현했습니다.
Libhac는 스위치 OS 파일 시스템 서비스 대부분을 구현하는데 쓰이는 C# 라이브러리입니다.
mageven은 DLC 지원을 추가했습니다. 일부 게임은 DLC가 들어있는 채로 나와서 에뮬레이터에서 DLC를 지원해서 게임을 실행할 수 있거든요.
드래곤 마크드 포 데스가 그런 게임인데 캐릭터 팩 DLC 1개는 게임에 내장되었고 나머지는 따로 구매해야합니다.
5. HID 개선
HID는 'Human Interface Device'라는 뜻으로 조이콘 에뮬레이션에서 터치 등의 기타 입력 방법을 포함하는 것입니다.
Mageven은 HID 구현과 관련 있는 몇 가지 문제를 해결했습니다. 그 중 하나는 게임이 영원토록 멈추는 문제였죠.
젤다의 전설 꿈꾸는 섬, 베이블레이드 버스트 배틀 제로 등에서 입력이 안 되어 게임을 할 수 없었습니다.
문제가 있는 다른 게임은 커비 스타 얼라이즈입니다.
컨트롤러를 어떻게 하든 커비가 왼쪽으로 이동하는 이상한 버그가 있었죠.
알고보니 게임이 메모리의 디버그패드라는 것에서 정보를 읽고 있었습니다.
디버그패드는 개발 중에 사용하는 특별한 컨트롤러인데 무슨 이유인지 이 게임이 접근하려고 했죠.
이 문제를 해결하여 이제 커비 스타 얼라이즈를 플레이할 수 있습니다. 일부 다른 게임도 문제가 있었는데 같이 해결되었죠.
6. 엔비디아 드라이버 겟스테이터스 기능
이 기능은 젤다무쌍과 언더테일 등 몇 가지 게임에서 필요했습니다.
Ac_K가 부분적으로 구현한 덕분에 일부 게임은 완전히 플레이할 수 있게 됐습니다.
GUI 개선
1.여러 개의 컨트롤러 지원
GUI에서 컨트롤러 매핑, 여러 개의 컨트롤러 지원은 한참 전에 진행했어야 할 일입니다
Xploitr의 작업으로 이제 GUI에서 컨트롤러를 매핑할 수 있습니다. 이제 수동으로 파일을 편집하지 않아도 됩니다.
또한 스위치에서 그렇듯 최대 8개의 컨트롤러를 구성할 수 있습니다.
기타 문제
피크로스 S4는 무작위로 소프트락이 일어납니다.
제노블레이드 크로니클스 디피니티브 에디션은 그래픽 문제가 좀 있지만 전체적으로 잘 돌아갑니다.
번아웃 파라다이스 리마스터는 프레임, 블러 효과 등의 문제가 있습니다.
모여봐요 동물의 숲 등 많은 게임에서 소리가 시끄럽게 나는 문제가 있습니다. 현재 전체 오디오를 다시 만드는 작업(코드네임 아마데우스)를 진행 중입니다.
'게임 > 출시 정보' 카테고리의 다른 글
쉐도우 워리어 3 공개 (0) | 2020.07.07 |
---|---|
생존 어드벤처 윈드바운드 21분 게임플레이 영상 공개 (0) | 2020.07.06 |
새로운 쉐도우 워리어 게임 예고 (0) | 2020.07.05 |
미스터리 인터랙티브 무비 데스 컴 트루, 7월 18일 PC 출시 (0) | 2020.07.05 |
지포스 나우, 6월 추가 기능과 향후 계획 공개 (0) | 2020.07.05 |
댓글