文章摘要
这篇文章介绍了如何在现代环境下重现1997年编译《雷神之锤》游戏的过程,包括原始开发使用的HP和DEC Alpha硬件、后来转向Windows NT和Visual C++的历史,以及四种不同还原度的实现方案,从寻找原始Intergraph工作站到使用虚拟机等不同方法。
文章总结
《让我们像1997年那样编译Quake!》
本文详细介绍了如何在复古开发环境中重现1997年编译Quake Win32版本的全过程。主要内容包括:
开发环境搭建: 1. 原始开发环境:早期Quake可执行文件是在NeXT系统上开发,使用HP 712-60工作站和DEC Alpha 2100A服务器交叉编译 2. 后期迁移:1996年6月后,id Software将开发环境迁移至Windows NT系统,使用Intergraph硬件
历史还原方案: - 提供四种不同还原程度的方案,从最原教旨的Intergraph RealizM工作站到虚拟机方案 - 作者测试了在"Quake PC"和Virtualbox虚拟机(运行Windows 98SE/NT 4.0)上的编译过程
详细步骤指南: 1. Windows NT 4安装: - 强调其极简主义启动界面特点 - 特别说明多CPU支持需要重新安装HAL
- Visual C++ 6环境配置:
- 安装过程展示(包含原始产品密钥验证界面)
- 特别注意事项:必须使用原始q1source.zip压缩包(来自Quake官方档案库)
- 文件传输建议使用Quick 'n Easy FTP Server或虚拟机拖放功能
- 编译问题解决:
- 首次编译会因缺少汇编器失败
- 需要安装VC++6 Processor Pack(包含ml.exe汇编器)
- 详细记录了安装MDAC 2.5和Visual Studio 6.0 SP5的曲折过程
成果展示: - 成功编译出可运行的QuakeWorld版本 - 展示了VC++6强大的调试功能(断点、堆栈跟踪等),虽然缺少现代IDE的智能提示
技术细节: - 对比了现代.sln/.vcxproj与传统的.dsp/.dsw文件格式差异 - 解释了Michael Abrash手工优化的汇编代码在编译过程中的作用
文末评价VC++6在1996年堪称革命性的开发体验,并附有完整的参考链接和过程截图。
(注:原文中大量图片链接和部分技术细节已精简,保留了核心编译流程和关键历史信息)
评论总结
以下是评论内容的总结,平衡呈现不同观点并保留关键引用:
对VC++6的怀旧与赞美
- 多位用户认为VC++6在1990年代非常强大且影响深远 关键引用:
- "VC++6 is remarkably powerful for 1996...must have felt like a dream at the time" (kristopolous)
- "VC++ 6 was awesome, I wouldn't have a career if I didn't have pirated copies" (elpocko)
对早期开发工具的欣赏
- 用户称赞其简洁高效的界面设计 关键引用:
- "It was so fast and super clear" (jbverschoor)
- "Every pixel has a purpose" (elpocko)
对Quake游戏的影响
- 有用户分享Quake如何激发了对网络技术的兴趣 关键引用:
- "I credit this game for my interest in understanding LAN topologies" (johnnythunder)
- "The whole thing compiles with 2 warnings. Incredible codebase" (ggambetta)
关于FTP传输模式的讨论
- 有用户指出ASCII模式默认设置的问题 关键引用:
- "ASCII mode was a nifty feature, but it never should have been the default" (jandrese)
其他技术讨论
- 包含对早期开发实践的评论和代码质量的赞赏 关键引用:
- "Back when I was making videogames I followed a similar philosophy" (ggambetta)
- "Nothing makes sense. We are definitely deeeep into the 90s" (kleiba2)
注:所有评论均未显示评分(None),主要反映用户对90年代开发工具和游戏的怀旧之情。