一、前言:

最近VR如火如茶,再不学习就落伍啦。有空闲时间,跟Rodolfo一起研究下相关知识。

本文介绍了两种方法来制作VR场景:

  • 方法一:通过6张小图搭建的VR场景
  • 方法二:通过一张全景图来搭建VR场景

最后搭建场景的方法是相同的,可以小图或者全景来充当场景。

二、软件环境

Unity5.3.1 X64: http://unity3d.com/cn/get-unity/download/archive

PTGui[可选]: 把全景图转成6个立方小图 http://www.ptgui.com/download.html

Google VR SDK For Unity: https://github.com/googlevr/gvr-unity-sdk

全景图片一张:(自行拍摄或者google查找)

三、切立方体图

1、运行PTGui,选择 Tools – Convert to QTVR/Cubic

2、点击 Add Files,添加全景文件

3、选择 cube faces,6 separate files (立方体表面,6个单独文件),可以选择 Cube Face Names ,设置每个文件的后缀

4、点击 Convert ,输出文件和你的全景图片在同一个目录

切图结果

四、六张立体图设置

1、导入 GoogleVRForUnity.unitypackage (如果已有,可忽略)

2、导入切好的6张小图,选中这6张图,统一设置图片的属性如下:

3、创建一个mat,命名为scene_cubes

4、修改scene_cubes的shader为 skybox/6 sided

5、把6张小图根据名字放入相应的区域

6、现在你的资源看起来应该如下

五、全景图设置

1、导入 GoogleVRForUnity.unitypackage (如果已有,可忽略)

2、导入全景图(未切割的大图),设置属性如下:

3、创建一个mat,命名为scene

3、修改scene的shader为 skybox/cubemap,并把步骤2的全景图,拖动到CubeMap

4、现在你的资源看起来如下

六、搭建场景

1、拖动gvr sdk自带的GvrMain.prefab到场景中,当然也可以自已创建,注意:结构要和GvrMain一样,组件也要绑定。

2、修改Main Camera  Clear FlagsSkyBox,而不是原来的 Solid Color,修改后左右相机也会保持一致。

3、选中 左右镜头,给他们添加 SkyBox,并把 scene_cubes.mat 或 scene.mat 赋值 [可省略]

4、点击 Window – Lighting 打开Lighting窗口,在Scene 中设置SkyBox scene_cubes.mat 或 scene.mat 

七、运行效果

按住Alt键移动鼠标模拟头部运动

参考资料:

QTVR:

QuickTime VR(也被称为QTVR)是苹果公司的QuickTime支持的一种文件格式。可以用它观看、制作可拖拽的全景照片,并通过在不同角度拍摄的图像来观察物体。它作为QuickTime播放器的插件工作,也可以以web浏览器的QuickTime插件方式工作。

QuickTime VR可以在Windows系统中也可以在苹果系统中工作。

全景:

虚拟全景图是环绕着观众的全景图(在内,向外),使人产生置身其中的感觉。通过“拼接”几张正常照片或者是两张采用了180度鱼眼镜头拍摄的照片来制作,或使用具有专门功能的全景相机,甚至使用三维建模的场景渲染的两张图片。

  • 单列全景,用一个水平行的照片。
  • 多行全景,与在不同倾斜角度拍摄的多行照片。

虚拟现实全景进一步分为包含顶部和底部,称为立方体或者球形全景,那些不包括顶部和底部的通常称为柱形全景。

单个全景,也称为节点,是从空间的独立的一个点拍摄到的。通过连接多节点或多对象的影片,使观众可以从一个地点转移另一个地点。这种多节点的QuickTime VR影片被称为场景。

苹果公司的 QuickTime VR文件格式的对全景图节点有两种表达方式:

  • 圆柱形(由围绕观众而成一个360度的图像)
  • 立方(由环绕观众的六张图片两两90 °× 90°正交构成的立方体 )

他们中的每一个通常被细分或者平铺成几个较小的图像,并被储存到一个特殊格式的QuickTime影片。

热点可嵌入全景,当选中它们时可以调用一些动作,例如移到全景图的另一个热点。

对象:

相比于在一个地点以不同的角度向外拍摄而成的全景图,对象是指是对同一物体在不同视角进行拍摄。

最简单的对象全景图是在单排上捕捉的,通常在一个物体的赤道方向上抓取拍摄。这通常会使用一个旋转的转盘使拍摄变得便利。对象被放置在转盘上,并且通过固定在三脚架上的相机以平均递增的角度进行拍摄(通常是10 °)。

捕捉一个多行拍摄的对象影片则需要更精细的设置,因为相机必须在对象的赤道的上下方倾斜一定的角度。

图像的来源不必须是照片,也可以用3D效果图或者图纸。

更多请参考:https://zh.wikipedia.org/wiki/QuickTime_VR

Unity VR全景漫游的更多相关文章

  1. 轩辕展览-VR虚拟展厅设计如何实现全景漫游功能

    什么是在线3d漫游?如何在VR虚拟展厅设计之中实现3d漫游功能?让我们来分享3dVR虚拟展厅的在线漫游. 实际上,在线3d漫游就是通过3d仿真场景,使用鼠标和键盘在虚拟空间之中自由漫游,它可以从高空俯 ...

  2. 打造H5里的“3D全景漫游”秘籍

    近来风生水起的VR虚拟现实技术,抽空想起年初完成的“星球计划”项目,总结篇文章与各位分享一下制作基于Html5的3D全景漫游秘籍. QQ物联与深圳市天文台合作,在手Q“发现新设备”-“公共设备”里,连 ...

  3. VR全景是市场价值及前景

    消费者视角痛点:比如酒店消费行业,很多消费者在预订酒店过程中,都遇到过这样的场景:网上照片里酒店房间看着宽敞明亮,格调不凡,感觉非常喜欢,等真正推开房门插上房卡一看,却大失所望.在酒店行业,网上照片和 ...

  4. VR全景智慧城市—你的掌上步行街

    "春风十里,不如有你",不知不觉间,身边的人已对VR不再陌生,VR眼镜的热销,VR体验店的火爆,VR游戏的向往等等.可见VR就是为生活而诞生! 2015年被称作VR行业的产业元年, ...

  5. VR全景智慧城市—城市就在你眼前

    "春风十里,不如有你",不知不觉间,身边的人已对VR不再陌生,VR眼镜的热销,VR体验店的火爆,VR游戏的向往等等.可见VR就是为生活而诞生! 2015年被称作VR行业的产业元年, ...

  6. 全景智慧城市——VR全景,开启VR营销新时代

    全景是一种新兴的富媒体技术. 与视频.声音.图片等传统主流媒体最大的区别是"可操作,可交互". 全景给人以三维立体感觉的实景360°全方位图像,此图像最大的三个特点: 全方位:展示 ...

  7. VR全景:720全景在线购物点亮你的眼球

    在今天,如果你还不了解什么叫做VR (Virtual Reality),那么你真的就已经Out了.现在的VR,正如当年的智能手机一样,传遍了整个世界,2016年,也被称作VR元年,各种各样的设备,以及 ...

  8. VR全景视图 Google VrPanoramaView

    2019独角兽企业重金招聘Python工程师标准>>> 一.背景简介 Welcome to VR at Google 进入Google VR主页,发现官方给我们提供了两套解决观看VR ...

  9. VR全景项目外包团队— VR/AR相关领域介绍和VR全景案例

    VR/AR相关领域这里我要说的一点就是硬件.诚然,硬件的确很难搞,国内在这方面就是荒漠,所以,如果你有信心,完全可以开拓一片蓝海.注意我是说真正的硬件,那些把Google的纸盒子拿来改改就能融资千万的 ...

随机推荐

  1. 利用Microsoft.Practices.Unity的拦截技术,实现.NET中的AOP

    1.记住这个单词的意思:Interception(拦截) 2.首先说一下原理和背景 原理:所谓的AOP就是面向切面编程,这里不多说,百度搜索. 目的:个人认为是为了解耦,部分代码跟业务代码分离,业务代 ...

  2. IOS在自己网站发布APP(企业版$299上线流程)

    最近刚上线一个企业内部应用,前期准备账号和后期上线过程发现网络上的资源不是非常全面,在这里写给大家分享一下我的发布过程 首先是企业账号的申请我们企业账号前前后后一共花了16天时间,由于公司各方面都非常 ...

  3. WPF资源字典的使用【转】

    资源字典出现的初衷就在于可以实现多个项目之间的共享资源,资源字典只是一个简单的XAML文档,该文档除了存储希望使用的资源之外,不做任何其它的事情. 1.  创建资源字典 创建资源字典的过程比较简单,只 ...

  4. Map工具系列-03-代码生成BySQl工具使用说明

    所有cs端工具集成了一个工具面板 -打开(IE) Map工具系列-01-Map代码生成工具说明 Map工具系列-02-数据迁移工具使用说明 Map工具系列-03-代码生成BySQl工具使用说明 Map ...

  5. Codeforces Round #342 (Div. 2) A. Guest From the Past(贪心)

    传送门 Description Kolya Gerasimov loves kefir very much. He lives in year 1984 and knows all the detai ...

  6. AE开发实现GP工具IDW

    IDW——空间插值 IDW(Inverse Distance Weighted)是一种常用而简便的空间插值方法,它以插值点与样本点间的距离为权重进行加权平均,离插值点越近的样本点赋予的权重越大. 设平 ...

  7. OpenGL Common Mistakes

    https://www.opengl.org/wiki/Common_Mistakes Do not use constructors/destructors to initialize/destro ...

  8. safari浏览器在window下 打开控制台

    有时候需要在window下测试safari浏览器的兼容性 然后需要打开错误控制台 以下是完整打开的图文教程 1.显示菜单栏 2.打开偏好设置 3.然后切换到高级标签 勾选 在菜单栏显示开发菜单 4.打 ...

  9. ASP.NET WEB API路由机制

    (一)路由原理 (二)路由设计架构分析 RouteBase

  10. JavaScript正则表达式详解(二)JavaScript中正则表达式函数详解

    二.JavaScript中正则表达式函数详解(exec, test, match, replace, search, split) 1.使用正则表达式的方法去匹配查找字符串 1.1. exec方法详解 ...