初识虚拟现实技术,非常倾心,奋力习之,阅《Learning Virtual Reality》一书之后觉得甚好,但不愿独乐乐,于是翻译之,与大家共同学习。本人学艺不精,难免有翻译不到位的地方,还望大家多多指点,多多包涵。

    ----始于2015.12(Michael Liew)

第一章 简介

    虚拟现实是一个有着巨大潜力的媒介。它开启了一种不可思议的交互和交流方式,可以让人瞬间转移到另一个地方,可以让你完全沉浸在其中,一切感觉起来都会非常真实。可是时至今日,由于造价和一些其它的原因使得虚拟现实仍不能服务于大众。反而,在过去的很多年里,随着科技的进步使得电视、网络和智能手机产生了革命性的影响。

    虚拟现实(即VR)的核心技术有这几方面:3D显示、运动追踪、输入设备、应用框架和开发工具。然而,消费者VR设备才刚起步,目前有:Oculus Rift、三星的GearVR和谷歌纸盒。它们体验效果水平不同,当然也价格不同。

    制作VR内容的软件也如雨后春笋一般出现。Unity3D和虚幻引擎目前都比较流行用来制作PC和手机游戏,它们现在也成了制作原生VR内容的首选。同时,web端的VR也没有落后,WebGL和3D JavaScript(如:Three.js和Babylon.js)提供了一个开源并且基于浏览器的VR解决方案,它们可以支持PC和手机操作系统。

    万分激动,随着越来越多的开发者投身VR研究,越来越多的消费者对它感兴趣,VR一定会掀起下一个计算机技术革命。本书主要针对现在开发VR的人介绍VR硬件、软件、开发技术和接口设计要点。如今的VR还非常不成熟,它就像一个蛮荒,你就是开拓者。未来充满了未知甚至危险,但是我们一定会坚持,相信明天会更好!下面我们来看一看到目前为止我们取得的成绩。

 
图1-1
    图1-1是目前非常出名的Tuscany VR Demo的截图,这个Demo是由Oculus VR团队制作,主要为了展示他们的硬件。带上Oculus Rift然后启动这个Demo,你就会置身于Tuscan场景中,你可以看见漂亮的别墅、懒散飘动的白云,你可以听到鸟儿在歌唱、溪水潺潺的声音。

    使用WASD键(游戏玩家都熟悉)可以在场景中移动,转动你的头就可以看见整个区域,你完全沉浸在一个虚拟的世界当中。这时,向前走然后进入房间,看看四周。走出来,爬上远处的山,你可以看见一个湖。过了几分钟,你甚至忘记了你是处在一个虚拟的世界当中。

    虚拟现实要做的就是让人们完全地沉浸,让他们全身心的体验虚拟世界和虚拟世界里面的事物。现在就开始我们的旅程吧!

《VR入门系列教程》之1---预热篇的更多相关文章

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

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

  2. 《VR入门系列教程》之3---运动追踪与输入设备

    运动追踪设备    第二种可以使人脑相信它真实处于虚拟世界的关键技术就是运动追踪技术,它可以通过追踪头部的运动状态实时更新渲染的场景.这与我们在真实世界中观看周围非常类似.    高速的惯性测量单元( ...

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

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

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

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

  5. 《VR入门系列教程》之19---GearVR开发初识

    本章我们来介绍一下如何在移动VR设备的佼佼者GearVR上进行开发,之前我们在桌面端的VR开发想法可以直接应用在移动端,但是仍然会有些不一样的技术需要注意.这次,我们仍然采用Unity3D引擎构建示例 ...

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

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

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

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

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

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

  9. 《VR入门系列教程》之13---相机与立体渲染

    相机.透视图.视口.投影     渲染好的场景都需要一个可以供用户查看的视图,我们通常在3D场景中用相机来提供这种需求.相机相对场景有位置和方向,就像我们生活中的相机一样,它也提供透视图查看方式,这种 ...

随机推荐

  1. qtextedit中的光标问题(通过调用repaint去掉Focus的阴影)

    [问题]两个textedit,取名为view0,view1.实现view0输入固定的字符个数后,用setFocus切换聚焦到view1,但是切换完了之后view0还会保留光标残影,出现两个文本框中都有 ...

  2. Mount挂载/data时出现mount: /data is busy 如何解决?

    1.df -h查看下挂载点/data是否正在使用,有时候会存在挂载了,但df -h不会显示出来,这时候 grep “/data” /proc/mounts 来进行查看 2.当确认挂载点/data正在使 ...

  3. 远程控制卡配置和RAID基本知识

    一.远程控制卡配置(戴尔R710)ctrl+eLAN Parameters ==>>远程连接IP地址配置LAN User Configuration ==>>远程连接账号密码配 ...

  4. 使用Visual Studio Code进行MicroPython编程

    转载请注明文章来源,更多教程可自助参考docs.tpyboard.com,QQ技术交流群:157816561,公众号:MicroPython玩家汇 Visual Studio Code(以下简称VSC ...

  5. 【JDK】ArrayList集合 源码阅读

    这是博主第二次读ArrayList 源码,第一次是在很久之前了,当时读起来有些费劲,记得那时候HashMap的源码还是哈希表+链表的数据结构. 时隔多年,再次阅读起来ArrayList感觉还蛮简单的, ...

  6. PATA 1027 Colors In Mars

    #include <cstdio> char radix[13] = {'0','1','2','3','4','5','6','7','8','9','A','B','C'}; int ...

  7. Java:Web Service初入门

    前言 Web Service技术在我第一次接触,又没有实际使用时完全不理解这是什么.以为是一种类似Spring,Shiro的编程框架.后来渐渐理解,WS(即Web Service缩写)是一种通用的接口 ...

  8. Python操作ElasticSearch

    Python批量向ElasticSearch插入数据 Python 2的多进程不能序列化类方法, 所以改为函数的形式. 直接上代码: #!/usr/bin/python # -*- coding:ut ...

  9. visudo 与 /etc/sudoers

    增加多个用户免密码登录 User_Alias USER_OPS = zouyi,hanerhui,shibeibei,gaoxudong,xiaoyuelin,wangsongfeng,sunjian ...

  10. 【PostgreSQL】 前缀模糊查询级优化

    前匹配模糊 使用B-Tree来加速优化前匹配模糊查询 构造数据 新建一张商品表,插入一千万条数据. create table goods(id int, name varchar); insert i ...