一、Web3D相关技术
Web3D以浏览器作为展示终端,内容部署在服务端。能够给用户以虚拟现实的交互体验,从不同角度观察对象(物体或场景)。目前常见的实现方式有以下:
1.1 三维建模与实时渲染
这种方式先用三维建模工具构建三维模型和场景,然后将其转为适合前端浏览器浏览的格式。在浏览器端,利用内置的webGL或通过专用插件(例如Unity)加载三维模型,响应用户的交互指令(切换视角、观察点),实时渲染出画面。
三维实时渲染的例子可参见华多秀的虚拟展厅:
建模工具 | 3dMax、 Maya |
浏览工具 | Unity3D插件、WebGL |
优点 | 效果连续、可自由漫游场景或以任意视角观察物体 |
缺点 |
对用户端显卡性能要求较高 要获得精致的细节、建模成本较高 |
1.2 360实景
通常是在现实场景中,在特定的离散观察点,用相机+云台拍摄多张影像并合成全景图,合并方法可以是圆柱投影或立方体投影。谷歌街景就采用了这种交互方式。
考虑到Web浏览的带宽限制,针对不同分辨率进行金字塔切片。
前端组件根据用户交互输入、加载相应的切片。
上述的虚拟场景也可以利用虚拟摄像机输出全景图。
360实景的例子,可参阅杭州工艺美术馆的在线展厅
http://www.zgdjss.com/unity/vr360/hzmg/tour.html
建模工具 | 云台、相机、全景图片制作软件 |
浏览工具 |
Krpano 跨终端的浏览插件 |
优点 | 建模成本较低、与真实场景完全一致 |
缺点 |
观察点离散 |
1.3 360旋转
Ajax-Zoom所谓的360Ratation 在技术实现上有点类似于360实景,所不同的是360实景是观察角度在转动,而360旋转则是:观察点和角度不动,让被观察对象旋转。
如果说360实景是用来表现观察点身处场景内的景象,360旋转则是观察点位于观察对象之外,让对象自身转动,呈现不同角度的外观。
两种技术都可以应用于博物馆展览,360实景适合展厅漫游,而360旋转则适合表现单件藏品。
通过转台+近距离高清拍摄,360旋转可以实现比现场更清晰的web展示,还有一点是现实展览做不到的——看背面。
二、Ajax-Zoom的坑
Ajax-Zoom有几个优点:
1. 兼容PC和移动终端各种主流浏览器
2. 比较完整的解决方案,包括了热区(点)编辑器(Hotspot ediotr, example33.php)、局部视图及切片(Crops)编辑器、批量预处理(Zoombatch.php)
3. 性价比不错:500张图以下,每张图不超过3.2M像素,免费! 普通的应用买199欧的license足够了。
下面说说我实施过程遇到的几个坑:
. 官方例子中没有采用透明背景的png,但要弄出比较炫的效果,这个是必不可少的,比如下面这个效果:
需要多个层叠加:
最上层的AZ控件透明背景+ 不透明文字和红框+半透明文字框背景色+ 虚化overlay + 底层被虚化的全屏AZ控件。
如果要弄这个,目前的版本会遇到几个坑。
a. 从底层AZ控件热点弹出的overlay,不能覆盖底层的Image Map和Navi bar。两个Image Map和Navi bar同时挂在天上,官网的例子没有出现这样的问题,是由于弹出窗口的底色覆盖了底层AZ的Image Map和Navi bar。窗口底色透明,问题就出来了。
咨询售后之后,确定为z-index问题,增加以下css解决:
.axZmHotspotOverlay{z-index:506 !important;}
b. 加载热点定义js文件,例子中采用jQuery.fn.axZm.loadHotspotsFromJsFile,该函数没有开放对加载进来的热点的修改回调方法,而项目实施中,根据业务规则批量处理热点应该是很常见的需求。
我用Jquery的js加载+更底层的jQuery.fn.axZm.createNewHotspot 函数,自行加载和创建热区,创建之前可以根据业务需要,批量修改或微调热区定义。
c. 官方文档说:用于切片处理的图形库 GD2+或IM可以二选一,而实际上,目前的AZ版本+GD2无法正常处理透明png图的切片。售后说将在下一版本解决此bug。
我们用IM代替GD2获得解决。
三、参考
更细节的搭建环境,可参考我同事的博客文章
http://clover-whd.iteye.com/
效果图是“方禾尖牙” 的作品。
相关推荐
jQuery AJAX-ZOOM是一个强大的图片缩放和相册展示插件,基于PHP和jQuery开发,提供大约300个定制选项可轻松的集成到已有的网站、CMS和购物系统中。 jQuery AJAX-ZOOM 4.1.4 更新日志: 错误修正,几个新的例子,...
Ajax-ajax-contact-form-wordpress.zip,wordpress的联系人表单,ajax代表异步javascript和xml。它是多种web技术的集合,包括html、css、json、xml和javascript。它用于创建动态网页,其中网页的小部分在不重新加载...
Ajax-wc-ajax-product-filter.zip,Woomerce AJAX产品过滤器-是一个插件,允许您根据类别、属性和价格轻松过滤产品。您可以对产品进行排序,导航到下一页和上一页,而无需重新加载该页。,ajax代表异步javascript和xml...
Ajax-jquery-ajax-cache.zip,jquery插件,用于用“localstorage”或“sessionstorage”缓存ajax。,ajax代表异步javascript和xml。它是多种web技术的集合,包括html、css、json、xml和javascript。它用于创建动态网页...
Ajax-magento2-ajax-layered-navigation.zip,ajax分层导航magento 2提供了一个过滤器列表,帮助您的客户以最短的方式搜索和获得他们最喜欢的产品。这个扩展应用了现代ajax技术来增强过滤系统,以提高用户对页面上每...
Ajax-magento2-ajax-cart-quick.zip,magento 2 ajax购物车扩展插件提供舒适的购物体验。客户可以很容易地选择可配置的选项并在弹出窗口中编辑项目,而不会浪费重新加载页面的时间。,ajax代表异步javascript和xml。它...
Ajax-Bridge 是一个JavaScript库,它在Web应用程序中提供了一个简单而强大的方式来实现异步通信,即Ajax(Asynchronous JavaScript and XML)技术。Ajax的核心在于无需刷新整个页面,就能与服务器进行数据交互,提升...
Ajax-gunbasic-js.zip,gunbasic js是一个库,用于快速开发基于ajax的web应用程序,这些应用程序易于独立测试。编写ajax代码只需要一行客户端js和服务器中的实现。适用于快速成型和团队开发。,ajax代表异步javascript...
Ajax-div-ajax-mapping.zip,用于javascript和php的库,允许映射php函数、类的静态方法和任意数据。这个类提供了一个更简单的解决方案来返回已注册的数据,而不必注册特定的函数。,ajax代表异步javascript和xml。它是...
Ajax-magento2-catalog-infinite-scroll.zip,免费的Magento 2扩展,为目录添加无限滚动功能(通过AJAX实现)编码教程,ajax代表异步javascript和xml。它是多种web技术的集合,包括html、css、json、xml和javascript。...
Ajax-bootstrap-select-ajax.zip,bootstrap select对数据源的ajax支持,ajax代表异步javascript和xml。它是多种web技术的集合,包括html、css、json、xml和javascript。它用于创建动态网页,其中网页的小部分在不重新...
Ajax-magento2-ajax-cart.zip,ajax add to cart for extension magento 2提供了通过ajax弹出窗口将产品添加到购物车的主要功能。它通过允许客户从产品列表页面将任何产品类型添加到购物车,显著改善了用户体验。,...
Ajax-online-chat-with-php-jquery-ajax-codeigniter.zip,这个应用程序表示使用codeigniter php框架、jquery和ajax的在线聊天。我还添加了表示用于测试应用程序的数据库的sql文件。只有首先导入数据库(chat.sql),...
Ajax-ajax-shopping-cart-page.zip,magento 2购物车页面ajax更新数量,ajax代表异步javascript和xml。它是多种web技术的集合,包括html、css、json、xml和javascript。它用于创建动态网页,其中网页的小部分在不重新...
Ajax-ajax-blob-downloader.zip,从ajax请求下载blob,ajax代表异步javascript和xml。它是多种web技术的集合,包括html、css、json、xml和javascript。它用于创建动态网页,其中网页的小部分在不重新加载网页的情况下...
总结来说,Ajax-ext框架是建立在Ajax技术和ExtJS基础上的一个强大工具,它简化了Web应用的开发流程,提高了开发效率。通过熟练掌握Ajax-ext,开发者可以构建出功能丰富、用户体验优良的Web应用。
Ajax-ajax-.zip,一、获得职位,ajax代表异步javascript和xml。它是多种web技术的集合,包括html、css、json、xml和javascript。它用于创建动态网页,其中网页的小部分在不重新加载网页的情况下更改。
Ajax-ajax-chat.zip,这是聊天室,ajax代表异步javascript和xml。它是多种web技术的集合,包括html、css、json、xml和javascript。它用于创建动态网页,其中网页的小部分在不重新加载网页的情况下更改。
Ajax-ajax-todo-list.zip,客户端渲染SPA(单页应用程序)实践。这个项目使用ajax来发送请求,node.js来处理api。,ajax代表异步javascript和xml。它是多种web技术的集合,包括html、css、json、xml和javascript。它...