一种3d网页的同步显示方法及系统的制作方法

文档序号:9597912阅读:301来源:国知局
一种3d网页的同步显示方法及系统的制作方法
【技术领域】
[0001]本发明涉及计算机应用领域,特别是涉及一种3D网页的同步显示方法及系统。
【背景技术】
[0002]随着科技的进步,网页技术的飞速发展,传统的2D网页已经无法满足人们的需求,随着3D显示技术的逐步发展,在3D立体影视播放装置上展示3D网页并便于用户观看,成为了新的技术需求。
[0003]3D网页的设计原理在于,人眼在观察一个三维物体时,由于左右眼的水平位置不同,看到的物体图像也不尽相同。左右眼看到的图像分别称为左视图和右视图,它们之间的差异称为视差。存在视差的左右视图通过人脑的处理既能使人感知到一个具有景深和层次感的世界。因此,利用了这一双目视差原理,同时显示某一三维场景的两个略有不同的投影视角,并使人的左右眼分别获得左右视图,可以在人脑中融合成立体图像。因此,3D网页设计,实际上就是针对同一场景,分别设计左视图和右视图。在显示过程中,左视图送入用户的左眼,右视图送入用户的左眼。
[0004]在现有技术中,通常由服务器将3D网页传送至客户端,由客户端进行加载和渲染。特别是针对同一 3D网页先将其中一个视图的代码全部传送完毕后,再传送另一视图的代码。例如,先传送左视图的代码,传送完毕后,再传送右视图的代码。该客户端可以是一3D网页的浏览器。客户端将渲染后的左视图送入立体影视播放装置的左视图播放通道,将渲染后的右视图送入立体影视播放装置的右视图播放通道,进而由立体影视播放装置处理为立体画面播放。
[0005]但是,在加载过程中可能出现加载不同步的问题,例如由于网络状况不佳或客户端所在终端的性能不佳时,在需要执行渲染步骤时,针对同一 3D网页,仅有左视图已实现了加载,右视图可能仍在传送的过程中,未开始加载或部分加载,则渲染仅针对完整的左视图,而缺失针对右视图的渲染画面或者针对右视图的渲染不完整,则输送至立体影视播放装置进行播放后,由于左右眼的图像之间的内容差别超出标准值,在观看时将相应产生发虚、错位的问题,容易导致用户双眼产生不适感,降低3D观影的用户体验。

【发明内容】

[0006]本发明解决的技术问题在于,使得3D网页的左右视图同步渲染,提升3D观影的用户体验。
[0007]为了解决上述问题,本发明公开了一种3D网页的同步显示方法,应用于一立体影视播放装置,包括:
[0008]步骤1,于3D网页的代码中,为隶属于同一 3D网页的左视图设置多个左视图进度标志位,为隶属于同一 3D网页的右视图设置多个右视图进度标志位;
[0009]步骤2,该立体影视播放装置接收所传输的该3D网页的代码;
[0010]步骤3,实时判断当前所收取到的代码中,是否存在具有相同进度的左视图进度标志位以及右视图进度标志位,如果是,将该具有相同进度的左视图进度标志位以及右视图进度标志位作为目标标志位,将左视图中截止到该目标标志位的代码内容以及右视图中截止到该目标标志位的代码内容进行渲染,并进行3D输出显示。
[0011]该步骤3后继续执行步骤2,该步骤3中,实时判断是否存在具有相同进度的左视图进度标志位以及右视图进度标志位的步骤进一步包括:
[0012]实时判断是否存在具有最新相同进度的左视图进度标志位以及右视图进度标志位;
[0013]如果是,将具有最新相同进度的左视图进度标志位以及右视图进度标志位作为该目标标志位。
[0014]该步骤3还包括,利用被渲染的部分以及空白像素,封装成一帧图像画面,进行3D输出显示。
[0015]在该步骤2中,该代码的传输顺序为先传输左视图的全部代码,后传输右视图的全部代码,或者,先传输右视图的全部代码,后传输左视图的全部代码。
[0016]该步骤2之后还包括:
[0017]判断当前是否接收到一幅完整的3D网页的全部代码,如果否,执行步骤3,如果是,对接收到的该幅3D网页进行整体渲染,封装成一帧图像画面,进行3D输出显示。
[0018]该3D网页的编码采用html标记语言配合Css样式定义的方式,或者,WebGL配合CssShader 的方式。
[0019]于该3D网页的代码中,该左视图与右视图分别包括文字和/或图片。
[0020]该左视图的代码与右视图的代码中,就同一图片的位置关系为:
[0021]rtop = ltop ;
[0022]rbottom = lbottom
[0023]rleft = lleft+wide/2
[0024]rright = 2*wide-rleft-lleft-lright
[0025]其中,rtop为右视图中的图片距离该3D网页的顶边的边距,ltop左视图中的图片距离该3D网页的顶边的边距,rbottom为右视图中的图片距离该3D网页的底边的边距,lbottom为左视图中的图片距离该3D网页的底边的边距,rleft为右视图中的图片距离该3D网页的左边界的边距,lleft为左视图中的图片距离该3D网页的左边界的边距,rright为右视图中的图片距离该3D网页的右边界的边距,lright为左视图中的图片距离该3D网页的右边界的边距,wide为该3D网页的宽度。
[0026]该左视图的代码与右视图的代码中,就同一文字的位置关系为:
[0027]rtop = ltop ;
[0028]rbottom = lbottom
[0029]rleft = lleft+wide/2+n
[0030]rright = lright-wide/2+n
[0031]其中,rtop为右视图中的文字距离该3D网页的顶边的边距,ltop左视图中的文字距离该3D网页的顶边的边距,rbottom为右视图中的文字距离该3D网页的底边的边距,lbottom为左视图中的文字距离该3D网页的底边的边距,rleft为右视图中的文字距离该3D网页的左边界的边距,lleft为左视图中的文字距离该3D网页的左边界的边距,rright为右视图中的文字距离该3D网页的右边界的边距,Iright为左视图中的文字距离该3D网页的右边界的边距,wide为该3D网页的宽度,η为用于视差模拟的像素个数,η为整数。
[0032]本发明还公开了一种3D网页的同步显示系统,设置于一立体影视播放装置,该系统包括:
[0033]标志位设置单元,用于于3D网页的代码中,为隶属于同一 3D网页的左视图设置多个左视图进度标志位,为隶属于同一 3D网页的右视图设置多个右视图进度标志位;
[0034]接收单元,该立体影视播放装置接收所传输的该3D网页的代码;
[0035]判断单元,实时判断当前所收取到的代码中,是否存在具有相同进度的左视图进度标志位以及右视图进度标志位,如果是,将该具有相同进度的左视图进度标志位以及右视图进度标志位作为目标标志位,将左视图中截止到该目标标志位的代码内容以及右视图中截止到该目标标志位的代码内容进行清染,并进行3D输出显示。
[0036]调用该判断单元后继续调用该接收单元,该判断单元进一步包括一更新判断单元,用于实时判断是否存在具有最新相同进度的左视图进度标志位以及右视图进度标志位;如果是,将具有最新相同进度的左视图进度标志位以及右视图进度标志位作为该目标标志位。
[0037]该判断单元还包括输出单元,用于利用该被渲染的部分以及空白像素,封装成一帧图像画面,进行3D输出显示。
[0038]在该接收单元中,该代码的传输顺序为先传输左视图的全部代码,后传输右视图的全部代码,或,先传输右视图的全部代码,后传输左视图的全部代码。
[0039]该接收单元之后还包括一完整性判断单元,用于判断当前是否接收到一幅完整的3D网页的全部代码,如果否,调用该判断单元,如果是,对接收到的该幅3D网页进行整体渲染,封装成一帧图像画面,进行3D输出显示。
[0040]该3D网页的编码采用html标记语言配合Css样式定义的方式,或者,WebGL配合CssShader 的方式。
[00
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1