许多人认为,HoloLens的推出,让微软跳过了“虚拟现实”(VR),直接进入了“混合现实”(MR)的世界,并把VR远远甩在身后,不再对其进行任何关注。但事实上微软的视线一直都没有离开过这一领域,有时我们甚至能看到微软也会在VR领域“横插一脚”。比如去年微软俄罗斯举办的黑客马拉松开发大会,就是以VR为主题的开发大会。就在最近,微软研究院又推出了一项新的技术,来帮助低配置手机流畅运行VR应用。
这项由微软研究院开发的功能被称为“Flashback”(闪回)。
“Flashback”项目的研究员Kevin Boos、David Chu和Eduardo Cuervo在相关的论文中首先论证了“Flashback”技术的必要性。文中指出,随着VR设备的日益普及,高性能PC对VR的局限性也日益凸显,而手机VR则因为性能、价格、头戴设备,手机散热等方面的参差不齐而导致用户体验上的千差万别,而“闪回”技术就是为了让低端配置的手机能够更好的展示VR内容,消除与高端手机之间的性能差而诞生的。
当然了,由于这项技术是直接应用于GPU和内存的,所以不论高端手机用户还是低端手机用户,未来都可以享受到这项让VR内容运行更流畅“黑科技”。
在介绍“Flashback”技术的机理之前,我们先来看看2015年动视出品的《使命召唤:尖峰战争》(Call of Duty: Advanced Warfare,CODAW)中使用的“着色器预载入”(Shader Preload)技术,以便于更理解微软研究院的这一新技术。
着色器属于渲染器的一种,负责相对高级的图形与色彩变换。随着硬件性能的提升,3D建模和贴图水平,光照特效越来越高,渲染器在游戏开发占据着越来越重要的位置。但由于CODAW使用了相对老旧的改进版IW引擎,在对高精度贴图进行渲染方面占用的资源相对偏高,因此着色器方面使用了预先载入技术以便提前将光照等渲染效果载入到地图之中。
“Flashback”技术与在CODAW中使用的着色器预载入的相似之处是,两者都希望通过预先加载一部分资源来节省硬件压力,不同的是,“Flashback”技术还需要在不影响加载时间的同时,达到流畅显示VR内容的效果。因此在实现“Flashback”之前,还需要一些硬件方面的技术作为支撑。
这项技术的运行过程是在占用一定存储空间的状态下,压缩部分帧,让GPU对其进行快速处理之后进行解压缩,这种动作会在显存、系统运存和二级存储(也就是手机的空余闪存)之间反复运行,并会在VR内容运行之前预先载入部分内容,并且,“Flashback”不仅仅用于静帧,对动态内容的支持也非常有效。
“Flashback”技术会将运动物体的缓存数据进行构造,包括该移动物体的运动轨迹、位置和对玩家的相对距离会预先放入缓存。另外,不同于直接将嘲进行缓存的静态帧,这项技术只会对动态帧的物体框架进行缓存,而静态帧则会通过镶嵌在每一帧中的深度像素元数据与动态帧相结合,形成真正的动态内容。
研究人员使用的开发环境为Windows 10系统与支持VR(以及HoloLens)的新版Unity引擎,并且配备了Rift DK2这款HMD来进行实际测试。但目前这项技术仅仅在低配置的PC上得到了实现,面对硬件性能尤其是GPU性能更孱弱的手机,研究员们仍在寻找更好的优化方案。除此之外,研究人员需要攻克的难题就是不受限制的HMD系统对“Flashback”的要求。当玩家的视角发生变化时,对硬件性能的要求更高。
不同于仅仅将物体与现实进行结合的MR,VR则是在屏幕的另一侧创造了一个全新的世界让用户去探索,因此相比之下,VR对硬件的要求会比MR高出许多。现在我们能够通过手机体验到VR内容,但与有着高端硬件的Rift或者Vive相比,不论画质还是帧数上手机都难以满足基本的要求。一些厂商从硬件出发,将高端硬件集成在HMD中,但这样的做法是否可行,人体是否感觉舒适仍有待考察;而微软的“Falshback”技术则是通过软件优化和对现有资源的利用让用户更好地使用手机来体验VR内容。不论未来手机硬件会如何发展,但是就现在而言,“Flashback”都是一项值得期待的优秀技术。
投稿邮箱:chuanbeiol@163.com 详情请访问川北在线:http://www.guangyuanol.cn/