3D视频眼镜远非一个新世纪的想法,它们被反复发明,复兴和重新发明。 Sega是即将将虚拟现实带给大众的20世纪科技公司之一。
1993年9月,她推出了Sega Genesis VR,这是一种3D头盔,可以进行3D游戏。眼镜在原理上与现代眼镜非常相似-两个LCD显示器而不是镜头,与“图片”的来源三维连接。所有这些都预示着1993年电子游戏领域的一场革命。但是,不幸的是,它没有发生-Sega VR的发布被取消,六个月后没有人记得该设备。但是,事实证明,后来开发了一款适用于世嘉的3D眼镜的游戏,该游戏直到四分之一世纪后才广为人知。是的,我设法玩了!
从1993年起,我们还设法从Sega VR演示中找到了一个视频。
Sega VR眼镜是什么?
1991年,这是第一次让他们知道。该公司宣布,只要花200美元,世界各地的游戏者就可以得到一种播放体积内容的设备。镜头的LCD屏幕分辨率为300 * 200点,该设备还配备了立体声耳机和头部跟踪系统。顺便说一下,这项技术是由Ono-Sendai开发的,在这里您可以研究专利。
传感器每秒更新头部位置信息100次,因此跟踪是准确的。视频眼镜的设计是根据1951年电影《地球停转之日》中的想法开发的,设备分别是“星际迷航”和“机器人”。
然后公司承诺一开始就一次发布四款游戏,甚至展示其玩法。但是后来出了点问题。在CES 1993上宣布之后,该设备从未发布过。据我们所知,很少有人对该设备印象深刻,而40%的测试人员对三维感很感兴趣-没有人为此做好准备。结果,在评估风险之后,世嘉决定关闭该项目。
官方声明说:“玩家已经习惯了虚拟现实,以至于在正常现实中移动时可能会受伤。” 总的来说,这是正确的-只需观看数千个YouTube视频中的一个即可观看人们第一次戴3D眼镜。但是现在,在3D现实中,玩家绊倒或撞到家具的威胁不再对任何制造商构成威胁。警告用户-仅此而已。
好吧,现在关于主要发现-一款拥有25年历史的游戏
数字考古学家之一迪伦·曼斯菲尔德(Dylan Mansfield)从世嘉VR团队的前开发人员那里了解了一款名为“核突袭”游戏的存在(扰流板-该行动发生在2032年,电力紧缺,几乎没有化石燃料。您是飞行员,也是您的使命-获得核燃料)。
游戏的源代码和Sega团队的工具一起保存在26年的CD中。这些工具用于创建游戏,因此,此发现使“核弹”的恢复任务变得更加容易。
但是,在恢复过程中,数字考古学家面临着许多问题,他们仍然设法解决。
主要问题是编译源代码。 “当您第一次获得未知的源代码时,您必须了解创建者如何编译开发。游戏恢复项目的作者Rich Whitehouse说,您不一定总是拥有所需的工具。
他很幸运-游戏的源代码包含许多有关代码的某些部分负责以及如何实现与Sega VR视频眼镜的交互的线索。好了,既然知道应该发生什么,那么就可以尝试在现代视频眼镜上实现所有这些功能。
该项目的作者还很幸运,提到的CD包含另一款游戏《 Monster Hunter》(不是Capcom)的代码,并详细说明了使用视频眼镜的问题。从那里,我们还设法获得了许多有用的信息。所有这些数据,再加上1993年开发人员的工具,使得还原游戏并将其适应现代设备(即HTC Vive VR)成为可能。顺便说一下,世嘉游戏的fps约为每秒15帧。对于现代游戏,该数字为100 fps。
一些技术细节
大部分Nuclear Rush代码都是用C编写的。它是使用Sierra 68000 C编译器进行编译的。
此外,编译还需要一些其他专有工具,使您可以添加纹理和其他游戏内容。
在第一次构建尝试中,结果发现其中一个工具DUMP.EXE丢失了。在调查了问题之后,事实证明该程序正在打开文件,并将每个字节的文本发送到标准输出,以便汇编程序可以接受二进制文件。该项目的作者能够用Borland C ++ 3.0编写类似的程序,并且一切都已成功编译。
结果,生成了一个COFF文件,其中ROM的重要部分被分成了几个部分。结果,作者不得不在Borland编写另一个程序来解析COFF并将ROM集成为一个整体。
游戏启动了,作者看到了这一点:
很明显,游戏看不到3D设备,也看不到它。因此,我不得不添加几行内容以跳过检查: 完成所有这些操作后,项目的作者终于看到了游戏本身。
wptr++; /* Skip number of sprites in frame */
wptr++; /* Skip hotspot offset */
wptr++;
wptr++;
好吧,然后作者花了很多时间进行调试,解决了主要和次要问题,此外,他还必须“教”游戏以检测现代3D眼镜,而不是缺少的Sega VR配件。作者在这里揭示了这些迷人的细节。
怎么玩
最重要的是。任何人都可以玩,为此,您需要:
Sega VR模拟器:
储备库
就绪的模拟器(Windows)
然后-游戏:
储备库
游戏本身(用于加载到模拟器中的ROM)。