运行平台

    大多数的VR应用都可以在目前多数的PC和手机上运行,基本上一个不太旧的PC或者配置好点的笔记本电脑都可以正常运行Oculus Rift,如果手机的CPU和显卡不错的话也可以有很好的VR体验。对于大众来讲,现有的电脑或者手机再加上VR的眼睛就可以很方便的体验VR,但是对于那种想要体验极致效果的人来讲,估计这次圣诞节礼物清单上就得写上最好的PC、最强大的CPU和显卡了。

    随着VR技术的成熟和普及,VR专业的电脑、手机和游戏主机也开始受到关注,这些专业的VR设备可以展现非常惊人的效果。

    目前,用来开发VR应用的有:各个平台的本地SDK、游戏引擎和开发框架,甚至最新版本的浏览器。

本地SDK

    对于不同的平台会有不同的驱动和链接库,Windows上会是Win32的dll链接库,安卓上会是Java的链接库等等。使用这些SDK可以非常方便的开发应用程序,比如你可以在图形或者游戏性等方面DIY定制。但是大多数开发者会用游戏引擎和开发框架来做VR的应用开发。

游戏引擎和开发框架

    除非你是引擎开发者,否则谁也不会愿意直接用本地SDK来开发应用程序,大多数会用游戏引擎开发,比如Unity3D(第三章会详细介绍)。Unity3D作为中间件,它很好地处理了图形渲染、物理系统、游戏框架以及驱动调用等技术。所以,非常多的VR开发者会使用Unity3D作为他们应用程序的开发工具。

    许多类似的中间件引擎都支持跨平台部署,你只需要编写一次代码,就可以发布在不同平台上,比如PC和手机。这些引擎还拥有一些非常好用的工具,比如等级编辑器和集成开发环境等。

浏览器

    当HTML5技术可以实现在浏览器上运行的应用可以和原生应用性能基本一致时,浏览器的开发人员就开始大力支持VR的开发。不过,支持VR开发这个特性应该会比支持移动端开发这个特性要快很多。

    浏览器支持VR开发会产生两方面影响:第一,这意味着我们可以运用HTML5、WebGL和JavaScript这些技术快速开发VR应用,并且这些应用的跨平台特性非常好。第二,也意味着现有的网站和网页都得提供一个类似超链接的东西,它们会切换到相应的VR页面。

VR视频

    VR视频有它自己另外一套技术,与游戏不同。游戏的图像都是合成的,里面的三维模型、动画、背景等等都是人工建出来的,而VR视频则是拍摄的现实世界内容。VR视频的内容真实感更强,甚至有时候会非常惊人,比如视频中播放的是一个直升飞机飞跃大峡谷的场景,那么观看影片的人就会像真的坐在飞机上一样体验飞行的刺激。当然,VR视频唯一比较局限的就是不能和场景进行交互。

    VR视频拍摄需要多个摄像头(至少两个,如果需要拍摄全景视频,就是360度都可以观看的视频,就需要更多的摄像头)。这个领域的先锋--加州的JauntVR公司,正在尝试着用一组摄像头拍摄第一个全景的VR电影。

    拍摄VR视频目前还处于比较初级的阶段,不过值得庆幸的是有许多公司和研究机构都在致力于发展这项技术。许多VR视频的播放器正在研发之中,它们可以运行在PC或者移动设备上,有的还准备支持跨平台运行。目前开发者面临的一个最大的问题就是没有一个统一的数据格式标准,如果要做视频内容的开发,就得锁定一个硬件供应商,然后使用针对性的技术和软件来制作。

《VR入门系列教程》之4---运行平台的更多相关文章

  1. 《VR入门系列教程》之14---面向大众的Unity3D

    大众化的游戏引擎--Unity3D     并不是所有VR应用都是游戏,然而现在做VR开发的几乎都会用专业游戏引擎来做,因为游戏引擎既满足了一个引擎的要求又可以方便地制作出高品质的VR应用.一个游戏引 ...

  2. 《VR入门系列教程》之17---发布第一个应用

    发布运行     Unity可以支持多种目标平台的发布,包括:桌面端.Web端.移动端.游戏主机端.     发布运行之前的Cubes场景至桌面端,我们先选择File->Build Settin ...

  3. 《VR入门系列教程》之7---DK2和Crescent Bay

    The DK2     于2014年春,Oculus发布了第二代开发版头显设备,代号为DK2.与DK1相比,Oculus Rift DK2的外观有很大改进,并且轻了许多,体积仍然比较大,可以罩住大部分 ...

  4. 《VR入门系列教程》之6---VR硬件介绍及DK1

    第二章 VR硬件介绍     本章主要介绍当前比较流行的消费版VR设备,包括VR头显以及应用运行的PC和手机平台.     即使是在这工业高速发展的时代,一些大厂(比如Facebook的Oculus ...

  5. 《VR入门系列教程》之2---VR头显

    什么是虚拟现实?     虚拟现实的目标:让人们相信真实地处于一个虚拟世界中.要达到这个目标就得让人们的大脑(负责视觉和运动感知部分)欺骗他们.不同技术合在一起才可以创造这种幻觉,包括:     全立 ...

  6. 《VR入门系列教程》之20---使用Oculus移动端SDK

    使用Oculus移动端SDK     在基于安卓系统的GearVR上开发应用需要用到Oculus的移动端SDK,下面的网址可以下载SDK:http://developer.oculus.com     ...

  7. 《VR入门系列教程》之18---Oculus代码剖析

    代码剖析 原文作者:Tony Parisi     那么,Unity究竟是如何支持Oculus VR运行的?首先,我们来看看Unity场景是如何构建的.在Unity集成开发包中有一个相机预设体,这个预 ...

  8. 《VR入门系列教程》之16---第一个OculusVR应用

    第一个VR应用    之前我们已经将Oculus的开发包导入到空工程中了,现在我们来构建第一个桌面VR的示例.开发包中已经有一个示例场景,只需要几步就可以让这个场景运行起来.我们将要构建的这个Demo ...

  9. 《VR入门系列教程》之9---谷歌纸盒

    谷歌纸盒---基于智能手机的廉价VR眼镜     如果用汽车来做类比,Oculus Rift和GearVR就是特斯拉和兰博基尼,它们物美但是价不廉.要是主机性能不好,那么几百美元的Oculus眼镜就是 ...

随机推荐

  1. LFS Linux From Scratch 笔记(经验非教程)

    做了一个自己的DIY Linux系统.从编译每一行代码,建立每一个文件系统结构开始. 创造自己的GNU/Linux系统,不同于任何发行版.按照的教程是来自 linuxfromscratch.org 来 ...

  2. Zabbix监控ActiveMQ

    当我们在线上使用了ActiveMQ 后,我们需要对一些参数进行监控,比如 消息是否有阻塞,哪个消息队列阻塞了,总的消息数是多少等等.下面我们就通过 Zabbix 结合 Python 脚本来实现对 Ac ...

  3. RocketMQ(1)-架构原理

    RocketMQ(1)-架构原理 RocketMQ是阿里开源的分布式消息中间件,跟其它中间件相比,RocketMQ的特点是纯JAVA实现:集群和HA实现相对简单:在发生宕机和其它故障时消息丢失率更低. ...

  4. 【转载】Spring Boot引起的“堆外内存泄漏”排查及经验总结

    背景 为了更好地实现对项目的管理,我们将组内一个项目迁移到MDP框架(基于Spring Boot),随后我们就发现系统会频繁报出Swap区域使用量过高的异常.笔者被叫去帮忙查看原因,发现配置了4G堆内 ...

  5. ABP开发框架前后端开发系列---(11)菜单的动态管理

    在前面随笔<ABP开发框架前后端开发系列---(9)ABP框架的权限控制管理>中介绍了基于ABP框架服务构建的Winform客户端,客户端通过Web API调用的方式进行获取数据,从而实现 ...

  6. golang开发:类库篇(一) Zap高性能日志类库的使用

    为什么要用zap来写日志 原来是写PHP的,一直用的error_log,第一次写Go项目的时候,还真不知道该怎么写日志,后来就按照PHP的写法自己不成规范的捣鼓写.去了新公司之后,发现用的是zap.后 ...

  7. linux Apache设置https访问以及加载mod_ssl.so模块以及问题解决

    开始之前的话: 1.配置好服务器防火墙的443端口规则: 2.购买好证书文件,我是沃通证书,准备好证书,这里不演示证书的购买和安装. 3.根据服务器类型下载文件,apache一共有4个文件 这里提供沃 ...

  8. Python绘制语谱图+时域波形

    """Python绘制语谱图""" """Python绘制时域波形""" # 导 ...

  9. Python编程菜鸟成长记--A1--04--Hello World!

    1.重点知识 掌握使用 命令行.文件.Jupyter 的方式执行 Python 代码 2.Hello World! 自从 C 语言之父 丹尼斯.M.里奇 在<The C Programming ...

  10. shell脚本常见错误一二三

    1.$'\r': 未找到命令的解决 2.: 不是有效的标识符h: 3.cd "$path"/webapps/ROOT 不能正常进入ROOT文件夹,$path并未与后面的字符结合起来 ...