happymax1212 先上图 微软曾为16位的Windows 3.x平台推出Win32s环境,能够运行一些32位程序。最初是为了允许一些为NT3.1开发的程序运行,后来兼容到一些NT3.5x的程序,因为NT3.51与Win95同时期,所以也有一些Win95/早期NT4程序可以运行,但是后者有可能会遇到UI适配的问题(毕竟是Win3.x)。可惜的是,Win32s只是Win32的一个子集,实际上欠缺了非常多的内容,其实大多数32位程序都有或多或少的问题或者干脆不能跑,能跑的内存管理上也严重受限,只能几个程序共享,没有NT的那种多任务能力。后来微软在Visual C++ 4.2起就不再兼容针对Win32s的软件开发了,Win32s的最终版本是1.30c,VC++ 4.1附带的也是这个版本。 三维弹球游戏本体来自WinNT4.0(从Terminal Server版提取的,所以编译时间是1998年的,带游戏的屑服务器)。测试了Win95 PLUS包里的版本,也可以正常运行,但95版音效文件是放在游戏Sounds目录下的(NT4版直接放在根目录),游戏在Win3.x下运行的时候不知道为什么不能识别Sounds文件夹里的音效因此没有声音(文件路径是正常受DOS支持的,也没有长文件名,猜测可能是调用子文件夹的方式不受Win32s支持),不过可以手动把文件全部移到根目录,游戏也可以识别并正常播放。另外也测试了WinME附带的版本,无法运行,调用了Win32s不兼容的指令。而且虽然系统是中文版的Win3.2,Win32s似乎并不能正确渲染中文字体,所以运行的是英文版的Pinball(中文版也能玩但是文字都是问号)。 如果主机系统不是Windows的话,用DOSBox+Win3.x+Win32s玩一玩这种游戏真不失为一种好的方案,相比于QEMU虚拟机、x86虚拟化的虚拟机,DOSBox对各种游戏的支持是非常好的,驱动显卡和声卡也非常容易,鼠标使用也非常流畅不飘,相比于DOSBox运行Win9x则性能更好而且文件很方便管理与交换(Win3.x可以直接挂载文件夹运行,但9x必须要虚拟硬盘了)。大家有兴趣不妨试一试。 另外还有Win3.0时代的微软经典小游戏合集,其中有一些后来被集成进了Windows
焊锡锡 happymax1212 并不是真3D,Win95发布的时候PC还没有支持3D加速的显卡 实际上这只是个2D游戏,当时的3D游戏,类似于DOOM/Quake之类的都是在DOS下运行,然后用CPU进行软件3D渲染的,当时也没有DirectX/OpenGL这些3D API,3D渲染全靠游戏开发者自己做,并且特别考验优化……