2 điểm bởi GN⁺ 2023-07-29 | 1 bình luận | Chia sẻ qua WhatsApp
  • Adaptive Tile Refresh (ATR) là công nghệ then chốt vận hành loạt Commander Keen (CK).
  • ATR được dùng trong bộ ba CK đầu tiên, còn bộ ba thứ hai sử dụng một phương pháp khác.
  • Commander Keen chạy tốt nhất trên PC được trang bị card Enhanced Graphics Adapter (EGA).
  • Lập trình EGA bao gồm các thanh ghi để cấu hình và một cửa sổ bộ nhớ được ánh xạ tới video RAM (VRAM).
  • EGA lưu dữ liệu trên bốn mặt phẳng để duy trì màn hình và băng thông cần thiết.
  • CK sử dụng EGA Mode 0xD, cung cấp độ phân giải 320x200 và 16 màu.
  • ATR giải quyết vấn đề băng thông bằng cách cho phép cuộn mượt và cập nhật màn hình.
  • Cuộn dọc mượt đạt được bằng cách tăng hoặc giảm thanh ghi CRTC_START.
  • Cuộn ngang mượt đạt được bằng cách dùng các thanh ghi OFFSET và PEL để dịch chuyển màn hình theo chiều ngang.
  • ATR cũng bao gồm cách khởi tạo lại khi màn hình ảo chạm tới rìa bằng kỹ thuật gọi là "jolt".
  • Bộ ba CK thứ hai dùng một phương pháp khác gọi là "drifting" để đạt được cuộn mượt mà không lặp lại các tile.
  • Drifting có nghĩa là cho phép địa chỉ bắt đầu CRTC bao quanh không gian VRAM.
  • ATR và drifting là những cách hiệu quả để dựng nền và sprite trong các game CK.
  • Phương pháp drifting của bộ ba thứ hai đơn giản và nhanh hơn ATR.
  • Đôi khi có vấn đề tương thích với một số card VGA nhất định, nhưng điều này vẫn có thể xử lý được.
  • Nhìn chung, ATR và drifting là những kỹ thuật đổi mới giúp game CK có được khả năng cuộn mượt và dựng hình hiệu quả.

1 bình luận

 
GN⁺ 2023-07-29
Ý kiến Hacker News
  • Cơ chế cuộn màn hình của Commander Keen 4-6 là vô song trên PC trong nhiều năm, nhờ công sức kỹ thuật của Carmack và phần mỹ thuật của Adrian Carmack.
  • Cuộn cảnh ngang, một bước nhảy vọt lớn cho game PC, đã được NES giải quyết trước PC.
  • Việc hiện thực kỹ thuật được mô tả cho game dựa trên tile thực ra không phức tạp như tưởng tượng, và nhiều nhà phát triển đã tìm ra những lời giải tương tự.
  • Podcast của Lex Fridman với J. Carmack bàn về các đổi mới chủ chốt của mọi trò chơi và rất đáng nghe.
  • Nhiều người có những ký ức đẹp về việc chơi Commander Keen và khám phá ra các bí mật của nó.
  • Một số nhà phát triển đã hiện thực kỹ thuật tương tự trong các dự án của riêng mình, nhưng hiệu năng có thể khác nhau tùy ngôn ngữ lập trình được sử dụng.
  • Bài viết này giải thích cách cuộn ngang hoạt động mà không làm hỏng framebuffer.
  • Dòng chữ "Kích hoạt chế độ tương thích VGA" trên màn hình khởi động của Keen luôn khơi gợi sự tò mò của người chơi.
  • Bài viết này cho thấy rất rõ sự tuyệt vời của Internet và nhận được nhiều lời khen ngợi.