Thiết lập hệ thống tệp
- Tạo hai thư mục cần ổ đĩa DOS để biên dịch mã nguồn Wolfenstein 3D.
Tải xuống
- Tải trình biên dịch Borland C++ 3.1, mã nguồn Wolfenstein 3D và các tệp VGA.
Giải nén
- Giải nén các tệp đã tải xuống.
DosBox
- Tải xuống và khởi động DosBox.
Gắn hệ thống tệp
- Gắn hệ thống tệp để gán thư mục cho từng ổ đĩa.
Cài đặt trình biên dịch
- Tiến hành quá trình cài đặt Borland C++ 3.1.
Cài đặt mã nguồn Wolfenstein 3D
- Giải nén mã nguồn trên hệ thống đã cài trình biên dịch.
Bắt đầu biên dịch
- Khởi động Borland C++ 3.1, mở dự án, thiết lập thư mục rồi thử biên dịch.
- Xuất hiện lỗi thiếu tệp thực thi TASM, sau đó thiết lập
PATH và biên dịch lại.
- Để khắc phục lỗi liên kết thất bại, chỉnh sửa đường dẫn tệp đối tượng trong dự án rồi biên dịch thành công.
Lấy asset
- Để có asset của game, tải phiên bản chia sẻ của Wolfenstein 3D hoặc mua bản đầy đủ.
- Cài đặt game trong DosBox rồi sao chép tệp thực thi đã biên dịch vào thư mục game.
Chạy game
- Thử chạy game, nhưng màn hình hiển thị bất thường do vấn đề chỉ mục tệp đồ họa.
- Để khắc phục, thay các tệp asset VGA bằng các tệp được tạo lại để khớp với mã nguồn.
Framebuffer VGA và tỷ lệ khung hình màn hình
- Điều chỉnh tùy chọn tỷ lệ khung hình màn hình của DosBox để giống với màn hình game gốc năm 1992.
Ý kiến của GN⁺
- Bài viết này mô tả quá trình biên dịch trò chơi cổ điển Wolfenstein 3D trên hệ thống hiện đại. Đây có thể là nội dung thú vị với các kỹ sư phần mềm mới vào nghề quan tâm đến phát triển game retro.
- Bài viết cho thấy cách làm cho mã cũ hoạt động trở lại bằng trình biên dịch và trình giả lập lỗi thời, qua đó nhấn mạnh tầm quan trọng của việc bảo tồn giá trị lịch sử của phần mềm và phục vụ học tập.
- Nó mang đến cho các nhà phát triển hiện đại cơ hội hiểu phần mềm trong quá khứ và từ đó có được góc nhìn sâu sắc hơn về sự phát triển của công nghệ hiện nay.
- Ở góc nhìn phê phán, quá trình này tốn nhiều thời gian và đôi khi có thể gặp các vấn đề không tương thích với môi trường phát triển hiện đại.
- Để áp dụng kỹ thuật này, cần có khả năng hiểu và chỉnh sửa mã nguồn của game cổ điển.
- Lợi ích của việc chọn cách tiếp cận này là có thể học được kỹ thuật phát triển game trong quá khứ, còn cái giá phải trả là phải giải quyết các vấn đề tương thích với môi trường phát triển hiện đại.
1 bình luận
Ý kiến trên Hacker News
Gợi ý sách về Wolfenstein 3D
Niềm vui với các hệ thống retro
Nỗi nhớ giao diện văn bản trên DOS
Trải nghiệm học lập trình với Borland Turbo C++
Đọc sách về những người tạo ra Doom
Gợi ý sách về phát triển game
Ký ức về việc đổi đĩa mềm khi không có ổ cứng
Ký ức ngọt ngào về IDE MS-DOS của Borland
Liên kết liên quan