WebXR系列:(2)五分钟开发全景相册-同学会漫画

导读:
全景(Panorama)技术,通常被叫做VR全景、360°全景、球形照片、球形视频等,有全景照片和全景视频两种展示形式,全景技术已经成为一种非常流行的富媒体技术,与普通照片、视频的区别是,全景技术营造出了一种空间感和沉浸感,因此在很多景区、校园、博物馆等场所,都使用全景技术对环境进行更加直观的展示。
本文为大家展示如何在网页中展示一张全景图像,在开始之前,我们需要准备以下素材和工具:
(1)全景图像1-2张,如下图所示:

(2)背景音乐素材一个(一般为mp3格式)
(3)一个代码编辑器(本文使用Sublime Text)
(4)浏览器(推荐使用Chrome进行开发测试)
本教程主要教大家如何将现有全景图像在网页中进行展示。作者希望大家能够以最快速和最便捷的方式实现本教程的效果,因此读者毋须配置繁琐的开发环境或运行环境,只需准备上述列表内容即可。
本文不涉及全景拍摄内容,需要学习全景拍摄内容可以移步AR VR训练营公众号查看“全景拍摄与制作课程”相关课程,在这里也做个预告,后期还将会更新UE4和Unity渲染输出全景图片和视频,如果对渲染全景图像感兴趣,请持续关注我们哦!
效果展示:
上述案例的最终效果可长按下面的二维码进入体验,或在浏览器中输入下面的链接进入:
https://ilab-oss.arvroffer.com/WebXR/course/02/

开发环境:
本文使用A-Frame框架来播放全景图,A-frame框架是一个用于构建3D/AR/VR应用的Web框架,基于Three.js开发,更多信息可以通过其官方网站进行了解(https://aframe.io/)。

核心代码:
基于A-Frame框架开发WebXR内容,可以通过扩展的HTML标签进行快速搭建场景,也可以使用javascript脚本来实现更多更灵活的交互功能,而本文的全景播放器仅需使用标签即可定义,下面为完整代码:
上述代码中,我们使用了a-scene,a-sky,a-sound三个HTML标签,这三个标签的作用如下表:

A-Frame扩展的HTML标签继承了HTML标签的属性,如a-scene标签的background属性设置了场景的背景色,也拥有自己特有的属性,如a-sky标签中的rotation属性,设置了相机的朝向,其值为一个三维的矢量。
教程视频:
文末福利:
私信小编获得完整的案例代码