
모더가 오리지널 Sony PSP에서 카운터 스트라이크 클론을 60 FPS로 구동하는 모습: OpenStrike는 개념 증명이며 봇 라운드만 지원
요약
레트로 시스템 개발자 doodlestrike가 Sony PSP용으로 전설적인 Counter-Strike의 개념 증명(PoC)을 성공적으로 재구현했습니다. 이 프로젝트는 Rust 기반 3D 엔진 Pocket3D와 JavaScript 엔진 PocketJS를 자체 개발하여, PSP 네이티브 해상도에서 안정적인 60 FPS로 구동하는 것이 핵심입니다.
핵심 포인트
- PSP의 하드웨어 제약 내에서 Counter-Strike PoC 구현
- Rust(Pocket3D) 및 JavaScript(PocketJS) 기반 엔진 사용
- BSP 렌더링 방식 유지 등 레트로 개발 기법 적용
- 오프라인 테스트 가능하며 모딩이 용이한 구조
레트로 시스템 개발자가 믿기 어려울 정도의 기술적 성과를 달성하지 않는 날이 거의 없습니다. OpenStrike가 가장 최근의 놀라운 프로젝트로, 22년 된 시스템인 Sony PlayStation Portable (PSP)용으로 전설적인 _Counter-Strike_의 개념 증명(proof-of-concept) 재구현을 만들었습니다.
이 포트는 Yifeng Wang(별칭 doodlestrike)에 의해 제작되었으며, 그는 이 작업을 위해 자체적으로 Rust 기반 3D 엔진인 Pocket3D와 게임 규칙 및 UI를 위한 PocketJS JavaScript 엔진을 개발했습니다. 개념 증명 단계임에도 불구하고, Wang은 이미 봇과의 제거전(elimination matches)은 플레이 가능하지만, 게임의 유명한 구매 단계는 아직 기능하지 않는다고 말합니다. 원래 _Counter-Strike_의 전체 8개 맵 세트는 이미 테스트되었으며, 관심 있는 모더들은 쉽게 자신만의 맵을 만들 수 있을 것입니다.
네, 이게 PSP에서 카운터 스트라이크입니다! 네, 이게 게임 UI를 검사하는 DevTools입니다! 네, 이게 PocketJS입니다! 클린룸 구현 FPS 엔진, 완전히 개방된 JavaScript 모드 API, 약 12MB RAM 사용량, 60fps, 완전 오픈 소스. ⚡️ pic.twitter.com/OprLN3E71JJuly 10, 2026
이 엔진은 그래픽 에셋을 사전 처리하여 라이트맵(lightmaps)을 버텍스 컬러(vertex colors)에 직접 베이크(bake)함으로써 (실시간 또는 시작 시 계산 방식과 달리), PSP의 네이티브 480x272 해상도에서 봇과 함께 게임을 안정적인 60 FPS로 구동하는 데 성공했습니다. 흥미롭게도, Wang은 더 화려한 현대적 알고리즘을 사용하기보다는 비가시 영역을 제거(cull)하기 위해 오래된 BSP (Binary Space Partitioning) 렌더링 방식을 유지했는데, 이는 '고장 나지 않은 것을 고치지 말라'는 모토에 힘을 실어줍니다.
이 게임은 또한 PS Vita에서도 구동되는데, 이 시스템은 원본 대비 960x544 해상도에서 4배의 유효 해상도를 가지며, 3D 렌더링이나 2D 에셋을 업스케일링하지 않고 네이티브 그래픽으로 작동합니다. 또한 표준 데스크톱 게임으로 프로젝트를 실행할 수 있어야 하며, 당연히 인기 있는 PPSSPP 에뮬레이터에서도 플레이 가능합니다. 이 프로젝트를 시작하려면, 여러 포트에서 _Doom_의 원본 WAD 파일을 사용하는 것과 유사하게, Counter-Strike 에셋 데이터를 직접 제공해야 합니다.
이 프로젝트의 전체 기술 아키텍처는 인상적인데, Wang은 단순히 '맵을 로드하는 3D 엔진 만들기'라는 범위를 훨씬 뛰어넘었습니다. Pocket3D와 PocketJS 2D 엔진 모두 범용적(generic)이며, OpenStrike는 단지 이들을 사용하는 첫 번째 '제품'일 뿐입니다. 코드는 서버/클라이언트/이벤트 아키텍처에서 실행되며, 이벤트 처리(예: 사격)가 렌더링 코어와 분리되어 있어 심각한 FPS 하락을 방지합니다. 게임은 오프라인으로 테스트할 수 있으며, 대부분의 요소는 쉽게 모딩(moddable) 할 수 있습니다. 관심이 있다면 OpenStrike repo를 확인해 보세요.
AI 자동 생성 콘텐츠
본 콘텐츠는 Tom's Hardware의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기