Modder tái hiện Counter-Strike trên PSP với tốc độ 60 FPS

Modder tái hiện Counter-Strike trên PSP với tốc độ 60 FPS

-

Lưu lại đọc sau

Bất chấp những giới hạn phần cứng của một hệ máy chơi game đã hơn hai thập kỷ tuổi, một lập trình viên vừa giới thiệu dự án OpenStrike — một bản mô phỏng tựa game bắn súng Counter-Strike có thể hoạt động mượt mà ở tốc độ 60 khung hình/giây (FPS) trên hệ máy cầm tay Sony PlayStation Portable (PSP).

Khai phá giới hạn phần cứng với Engine 3D hoàn toàn mới

Dự án OpenStrike được phát triển bởi lập trình viên Yifeng Wang (được biết đến với biệt danh doodlestrike). Thay vì sử dụng các công cụ có sẵn, Wang đã tự tay viết nên một engine 3D hoàn toàn mới dựa trên ngôn ngữ lập trình Rust với tên gọi Pocket3D, đi kèm với engine JavaScript PocketJS để xử lý các quy tắc trong game (game rules) và giao diện người dùng (UI).

Mặc dù dự án hiện vẫn ở giai đoạn nguyên mẫu thử nghiệm (proof-of-concept), nhà phát triển cho biết các trận đấu loại bỏ đối phương với bot đã có thể chơi được bình thường, chỉ trừ giai đoạn mua vũ khí đầu vòng đấu là chưa hoàn thiện. Toàn bộ 8 bản đồ gốc của Counter-Strike đều đã được thử nghiệm thành công trên hệ thống này.

Tối ưu hóa kỹ thuật đồ họa thông minh

Để giúp OpenStrike hoạt động ổn định ở mức 60 FPS trên độ phân giải gốc 480×272 của PSP, Wang đã áp dụng các phương pháp tối ưu hóa đồ họa mang tính thực dụng cao:

  • Xử lý ánh sáng: Thay vì tính toán ánh sáng theo thời gian thực hoặc khi khởi động màn chơi, hệ thống tiến hành tiền xử lý (pre-processing) các tài nguyên đồ họa để tích hợp trực tiếp bản đồ ánh sáng (lightmaps) vào màu sắc của các đỉnh vật thể (vertex colors).
  • Kết xuất hình ảnh: Tác giả quyết định giữ nguyên phương pháp kết xuất BSP (Binary Space Partitioning) cổ điển của dòng game gốc. Phương pháp này giúp hệ thống chủ động loại bỏ việc hiển thị các khu vực khuất tầm nhìn thay vì phải dùng đến các thuật toán phức tạp và ngốn tài nguyên hiện đại.

Khả năng tương thích chéo và kiến trúc mở

Không chỉ dừng lại ở hệ máy PSP, dự án này còn thể hiện khả năng mở rộng nền tảng rất ấn tượng:

  • Hỗ trợ PS Vita: Trò chơi có thể chạy trên máy PS Vita với độ phân giải thực 960×544 (gấp 4 lần so với PSP) mà không cần đến bất kỳ kỹ thuật nâng cấp tỷ lệ (upscaling) nào đối với đồ họa 3D hay tài nguyên 2D.
  • Trải nghiệm đa nền tảng: OpenStrike hoàn toàn có thể hoạt động như một tựa game máy tính (desktop) tiêu chuẩn và tương thích hoàn hảo với phần mềm giả lập PPSSPP phổ biến.
  • Yêu cầu tài nguyên gốc: Tương tự như việc chạy các bản mod của tựa game Doom cũ, người chơi sẽ cần tự cung cấp các tệp tài nguyên dữ liệu gốc của Counter-Strike để trò chơi có thể hoạt động.

Điểm sáng lớn nhất của dự án nằm ở kiến trúc kỹ thuật. Cả hai engine Pocket3D và PocketJS đều được thiết kế dưới dạng mã nguồn mở đa dụng, và OpenStrike chỉ là “sản phẩm” đầu tiên ứng dụng chúng. Mã nguồn chạy trên kiến trúc Server/Client/Event, trong đó việc xử lý các sự kiện (ví dụ: hành động nổ súng) được tách biệt hoàn toàn khỏi lõi kết xuất hình ảnh đồ họa, giúp ngăn chặn tình trạng tụt FPS đột ngột.

> Ý kiến đóng góp xin gửi về: [email protected] > Press Inquiries: [email protected]

GameN - MXH dành cho game thủ Việt

Ban quản trị

ĐỌC NHIỀU