H5打造3d场景不完全攻略(一): H5 3d表现形式
前言
日前,taobao造物节H5放肆地火了一把。相信接下来将3d嵌入网站的这种营销方式会被越来越多的人留意到。
工作之余体验了若干个3d H5页面,感觉这类的H5互动体验性明显要比普通的要强,把二维的物体转化成三维,能给人一种置身其中的感觉。所以,一个好的idea加上低成本的技术实现——将3d融入H5今后也许还会爆发出更大的能量。
3D在H5中的表现形式
话不多说,直接贴几个链接大家体验一下。
全景
1、场景全景
这里选了三个比较有代表性的全景H5。
作为近来最HIT的一个H5,其实从技术上来不难实现,最大的卖点就是创意了。进场动画是一连串的背景画布旋转变换迅速飘入视线,试感受下就能体会到这是很棒的视觉盛宴。当然也跟精致的插画设计分不开。
全景技术是基于Three.js,创建天空盒子并进行贴图实现的,但由于内容比较少,并且对代码进行了压缩,所以体验起来还是很流畅的。由于背景使用了星空图,所以从视觉上来说图与图之间拥有较高的贴合度。
由于历时比较长,这里就不放动图了,大家自己去网址体验一下吧。
作为一个叙事性的H5,它的场景和动效全部基于代码实现,而抛弃了视频这种方式。这给移动端用户带来了加载性能上的显著提升。但它与用户的交互比较少,因而并不能直观体现出这是完全基于代码实现的。并且节奏平缓,没什么波澜,配乐略显哀沉,让人很难完全体验完这个长达5分钟的H5。还不如看一个有趣的视频。如果能将它融入更多的交互和起伏有序的情节一定能给这个H5增色很多。
2、物品全景
这个比较好理解,就是我们可以通过手势触摸物品,观看到物品各个面的样式。但是这种应用场景较为局限,一般为某个特定品牌物体展示时才比较适合。
效果可在本文最后的“胜势全开”例子中体验。
视差
比较常见的是页面滚动时的视差。然而使用3D变换中的rotate和translate属性实现的视差,能更大化地体现出3D效果。实现起来是非常简单的,只要将图片中小元素分离出来,然后让他们以不同的值旋转移动(注意值不能相差太大,有细微飘动的感觉就可以了)从视觉上便能感觉这些小元素是层叠在一起,动态模拟出不同视角的显示效果不同。
看一个例子
3D变换
这个H5也是只做造物节那个团队做的,技术选型依然是js+css3d,同样是使用了他们团队封装的css-engin这个轻量级类库。这是他们较为早期的作品。不难发现,这个团队对css3d的运用非常的纯属。
从这个H5来说,刚进入画面就有物体冲入视线的感觉,并且不断地运用360°旋转和镜头的拉伸缩放感对视觉造成冲击。很好地为我们诠释了,以css3 3d变换打造H5 3d亦不是为一种明智的低成本的实现方式。
H5中3d的表现形式就先谈到这里了,接下来我会从技术实现的角度聊聊这些有趣的H5到底是怎么实现的。
H5打造3d场景不完全攻略(一): H5 3d表现形式的更多相关文章
- 裸眼3D全攻略3:拍摄3D—瞳距、镜距、视角偏转与空间感
http://sd89.blog.163.com/blog/static/356041322014112532958728/ 3D图片的拍摄,与平面有着全新的不同要求,那就是空间感的表现. 简单来说, ...
- H5 移动调试全攻略
H5 移动调试全攻略 随着移动设备的高速发展,H5 开发也成为了 F2E 不可或缺的能力.而移动开发的重中之重就是掌握调试技巧,定 Bug于无形. 一.概要 因为移动端操作系统分为 iOS 和 And ...
- 旅行app(游记、攻略、私人定制) | 顺便游旅行H5移动端实例
<顺便游旅行>是一款H5移动端旅行app,提供目的地(国内.国外.周边)搜索.旅游攻略查询.游记分享.私人定制4大模块,类似携程.同程.去哪儿.马蜂窝移动端,只不过顺便游app界面更为简洁 ...
- 打造一个高逼格的android开源项目——小白全攻略 (转)
转自:打造一个高逼格的android开源项目 小引子 在平时的开发过程中,我们经常会查阅很多的资料,最常参考的是 github 的开源项目.通常在项目的主页面能看到项目的简介和基本使用,并且时不时能看 ...
- silverlight,WPF动画终极攻略之番外 3D切换导航篇(Blend 4开发)
原文:silverlight,WPF动画终极攻略之番外 3D切换导航篇(Blend 4开发) 这篇介绍的是3D导航,点击图标,页面360°翻转的效果!有什么不足的欢迎大家指出来. 1.新建一个user ...
- Win7系统服务优化完全攻略
前文提到Windows系统启动的原理,其中加载各项系统服务是影响系统启动时间的重要因素,之前软媒在Win7之家(http://www.win7china.com/)和Vista之家(http:// ...
- BZOJ3252: 攻略
Description 题目简述:树版[k取方格数] 众所周知,桂木桂马是攻略之神,开启攻略之神模式后,他可以同时攻略k部游戏. 今天他得到了一款新游戏<XX半岛>,这款游戏有n个场景 ...
- [经验] Win7减肥攻略(删文件不删功能、简化优化系统不简优化性能)
[经验] Win7减肥攻略(删文件不删功能.简化优化系统不简优化性能) ☆心梦无痕☆ 发表于 2014-1-24 11:15:04 https://www.itsk.com/thread-316471 ...
- 【BZOJ-3252】攻略 DFS序 + 线段树 + 贪心
3252: 攻略 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 339 Solved: 130[Submit][Status][Discuss] D ...
随机推荐
- QT:Unknown module(s) 与MaintenanceTool.exe更新、添加组件
https://www.cnblogs.com/lisongzzx/p/13861430.html 原因1:新安装的Qt Creator中并没下载下来相关组件 解决方法: 1.在Qt安装目录下找到Ma ...
- WPF优秀组件推荐之Stylet(一)
一.简介 Stylet是基于WPF的一款MVVM组件,虽然WPF本身是自带MVVM功能的,但实现起来不是很方便 ,通过Stylet,用户可以用很少的代码就能享受MVVM带来的舒适体验. 目前Style ...
- vue--加载模块详解
1.postcss-loader.autoprefixer.css-loader .sass-loader:加载css模块及css预处理模块,添加浏览器前缀到CSS内容里 加载模块:npm insta ...
- Hadoop3.x完全分布式搭建(详细)
环境准备 vm虚拟机(自行安装Centos7系统) hadoop3.x安装包(linux版本) java1.8安装包(linux版本) 为了能够按照教程顺利操作,需要注意几点细节 不要不看文字直接复制 ...
- 六、Java方法
Java方法 何为方法 System.out.println(),那么它是什么呢? System是一个类,out是一个对象,println()是一个方法 Java方法是语句的集合,它们在一起执行的 ...
- xor加密的python实现
#md5加密 import hashlib hash_md5 = hashlib.md5() x=input("Please input your text:") print( & ...
- SQL从零到迅速精通【查询利器】
1.[列选取]从fruits表中获取f_name和f_price两列,T-SQL语句如下. SELECT f_name,f_price FROM fruits; 2.[去重]查询fruits表中s_i ...
- Laravel-Auth认证
1.建立数据表 admins 2.找到config下的auth.php 文件,加入如下代码 <?php return [ /* |-------------------------------- ...
- javaScript阻止浏览器F5刷新
1 <script type="text/javascript"> 2 //禁止用F5键 3 document.onkeydown = function (e) { 4 ...
- MRS IoTDB时序数据库的总体架构设计与实现
MRS IoTDB时序数据库的总体架构设计与实现 MRS IoTDB是华为FusionInsight MRS大数据套件最新推出的时序数据库产品,其领先的设计理念在时序数据库领域展现出越来越强大的竞争力 ...