美文网首页
使用 webvr 制作全景图

使用 webvr 制作全景图

作者: vivaxy | 来源:发表于2017-04-28 17:56 被阅读406次

webvr 是一种在浏览器中体验 vr 的技术,由 w3c 官方制定规范,各浏览器实现。由于目前各浏览器对 webvr 的支持不一,因此现在使用这项技术时需要额外使用一个右谷歌提供的向下兼容库 webvr-polyfill

目前有不少框架可以让我们很方便的做 webvr 应用。

几个例子

我们先看看 webVR 能做什么:

上面几个例子用的都是 A-Frame,由 mozilla 提供。

全景图片

一般的,我们需要专业摄像设备来获取全景图片。比如东方明珠空中全景一例中,我们用了 96 张图片,组成了一个立方体空间,在这个空间中,我们可以看到上下左右的图像。

我们使用相机在同一地点,多个角度下拍摄多张照片,通过图片拼接处理,再裁剪开。图片拼接可以通过 Photoshop 的 Photomerge 来实现(File > Automate > Photomerge)。

还可以用手机的全景模式拍摄图片,然后用 Photoshop 制作出来。下面就详细介绍下这个全景图片的制作。

全景图片制作

用 Google 照一张全景图(panorama),这是一张泰国帕南海滩的照片。

https://upload.wikimedia.org/wikipedia/commons/5/5f/Phra_Nang_beach_panorama_edit.jpg

在 Photoshop 中新建一个 2048 * 1024 尺寸或者类似比例的图片,作为全景图片的最终尺寸。把素材导入到里面去。

image.png

调整图片的宽度铺满整个画布,图片上下两侧留空。素材中的地平线保持在图片的中心位置。

我们使用 Photoshop 的自动填充让上下两块铺满,但是又不改变图片的比例。

先选中素材的所有像素(Command + 左键 点击图层)。然后反选像素(Select > Inverse),再增加几像素的选中区域(Select > Modify > Expand > Expand by 5 px)。

选择自动填充(Edit > Fill > Contents: Content-Aware)。如果空白区域太大的话会导致把天填充到海里去,所以我们可以一段一段来。

对于不满意的位置,可以选中,右键,再自动填充。

image.png

上面是效果图。

然后我们要处理在旋转一周后左右不能对应上的问题。复制左侧一部分内容,粘贴到右侧,左右反转一下(选中右侧,Edit > Transform > Flip Horizontal),然后添加一个渐变色的图层蒙版。

image.png

处理后的图片过度自然多了。

最后,我们把图片放到 a-frame 的 a-sky 中就可以了。

<!DOCTYPE HTML>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0">
    <title>A-Frame Panorama</title>
    <script src="../aframe.min.js"></script>
</head>
<body>
<a-scene>
    <a-sky src="./phra-nang-beach-1.jpg" rotation="0 0 0"></a-sky>
</a-scene>
</body>
</html>

实际效果可以参考香港海洋公园全景,这个全景效果就是这么做出来的。

虽然比不上东方明珠的效果,但是也有一定的效果了。

除了 a-frame 之外,还有react-vr,由 facebook 提供的 vr 解决方案,希望它能带来更好的开发体验。

相关文章

  • 使用 webvr 制作全景图

    webvr 是一种在浏览器中体验 vr 的技术,由 w3c 官方制定规范,各浏览器实现。由于目前各浏览器对 web...

  • krpano全景图

    本文介绍了使用krpano制作全景图的一些基础知识,krpano可以在浏览器上实现全景图效果,支持flash和HT...

  • 使用全景图制作天空盒

    记录环境:unity 5.6 在Unity中使用全景图制作天空盒,可以在不使用模型的情况下制作出自定义的大环境。 ...

  • 全景图制作

    hi你们的小胡又来了, 今天小胡教大家如何制作全景图 ——分割线—— 首先让小伙伴们看一下全景图, 这些全景图有许...

  • 《思维导图》曾国藩训练营9

    如何运用思维导图,制作全景图。 一、为什么要使用思维导图,进行自我分析? 因为思维导图不仅可以给我一个全景...

  • JS或Jquery

    VR 大潮来袭 --- 前端开发能做些什么 去年谷歌和火狐针对 WebVR 提出了 WebVR API 的标准,顾...

  • 教你把游戏场景制作成全景图

    在现实世界,我们已经熟悉全景图的拍摄。但是,在虚拟世界,例如游戏,能不能也制作成全景图呢? 当今,唯美的3D游戏,...

  • UE4.18 VR导出全景图制作全景视频

    前言:该教程用于UE4制作的vr作品导出全景图,再将序列帧的全景图合成全景360视频。为了加快渲染速度,修改了部分...

  • WebVR

    //three.js核心库 three.js //从连接的VR设备中获得位置信息并应用在camera对象上,将在下...

  • vr全景制作方法流程-vr全景智慧城市冯玉龙提供

    vr全景制作方法流程-vr全景智慧城市冯玉龙提供 全景智慧城市 工具/原料 全景图 登陆制作平台 方法/步骤 第一...

网友评论

      本文标题:使用 webvr 制作全景图

      本文链接:https://www.haomeiwen.com/subject/qedazttx.html