ps2-web-recomp - PS2 games statically recompiled to WebAssembly

ps2-web-recomp - PS2 games statically recompiled to WebAssembly

ps2-web-recomp는 PlayStation 2 게임을 에뮬레이터 없이 브라우저에서 실행하는 오픈소스 프로젝트입니다. 게임의 Emotion Engine 기계어를 C++로 정적 재컴파일한 후 WebAssembly로 변환하고, PS2 운영체제와 하드웨어를 재구현한 런타임과 연결합니다. Gran Turismo 4와 God of War II가 이미 구동되며, WebGPU 기반 렌더러로 50~60fps의 부드러운 플레이가 가능합니다. 자신이 소유한 디스크 이미지를 사용해 로컬에서 웹 페이지로 변환할 수 있습니다.

Gran Turismo 4는 부팅부터 오프닝 무비, 메뉴, 레이스까지 음악과 효과음과 함께 플레이되며, 브라우저에 보관된 메모리 카드에 저장됩니다.
  1. aceazzameen

    잘 모르겠다. 갑자기 네이티브로 돌아가는 decomp가 엄청나게 많아졌다(물론 이 글은 WebAssembly에 관한 것이긴 하지만). 숨겨진 악성코드에 대한 우려는 없는 건가? 내 생각엔 에뮬레이터 씬이 가진 것과 같은 수준의 신뢰와 검증은 아직 없는 것 같다. 적어도 아직은.

  2. zuInnp

    이 recomp 관련된 것들은 정말 놀랍다. AI가 내 직업을 바꿔놓은 게 정말 마음에 안 들지만, 그래도 적어도 뭔가 좋은 걸 얻긴 하네.

  3. mamonoleechi

    - 관련 스레드: https://news.ycombinator.com/item?id=49991243 (PSP용 God of War, WebAssembly로 recompile되어 브라우저에서 실행됨)

    - 지금 읽고 있는 주제를 좋아한다면 흥미로울 수도 있음: https://thegamingemporium.com/recent/

  4. Megabinator

    컴파일러를 WebAssembly로 컴파일해서 어디서든 호스팅할 수 있게 하고 브라우저에서 직접 프로젝트를 변환하는 건 어떨까?

  5. eluusive

    긴 CD 로딩 화면 없이 Gran Turismo를 하고 싶어할 사람이 누가 있겠어?

  6. kodablah

    지난 몇 달 동안 PS Vita용으로 비슷한 걸 했다: https://github.com/cretz/vitaslop

    하지만 개별 게임 대신, WASM으로 ARM-to-WASM 트랜스파일러를 "만들었다". WebGPU 셰이더, 오디오 등의 멋진 트랜스코딩도 있고.

    지금까지 몇 개 게임만 테스트해봤고 아직 초기 단계지만, 플래그십 Android 폰의 Chrome 모바일에서 꽤 잘 작동한다.

  7. Hyperlisk

    정말 멋지다! 나도 비슷한 걸 작업 중인데, 정확성에 초점을 맞춰 훨씬 느리게 진행하고 있다. 내 것은 내장 SIMD 지원을 활용하기 위해 Golang으로 recompile된다.

    PS2 바이너리 주변 툴링을 만들어 왔고, 곧 PSS 파일을 인코딩된 그대로, 시뮬레이션된 렌더러를 통해, 그리고 게임 내 엔진 렌더러를 통해 재생할 수 있는 독립형 PSS 플레이어를 내놓고 싶다. LLM 덕분에 미래가 정말 밝다!

  8. khalidkhair

    이걸 호스팅하는 게 얼마나 "합법적"일지 궁금하다. 호스트가 기본적으로 모두를 위해 게임을 무료로 배포해야 하니까.

이 날의 다른 글

2026-10-12