一种基于浏览器的三维场景构建方法

文档序号:6383241阅读:312来源:国知局
专利名称:一种基于浏览器的三维场景构建方法
技术领域
本发明涉及一种的三维场景建模方法,尤其是涉及一种基于浏览器的三维场景构建方法。
背景技术
随着互联网技术的不断进步,网络上的内容从简单的文字到图片、从视频到Flash,内容日益丰富,各种程序都可以直接在网页中运行,不再需要下载安装客户端,信息服务变得越来越简单快捷。然而,3D技术却一直不能在网络上直接运行,主要原因是因为3D的数据量太大,需要很长的下载等待时间。现在虽然计算机的硬件性能在不断提升,网络速度也在不断加决,但是三维化本身数据量就大,而且对硬件要求相对较高,目前的主流硬件环境和网络速度环境对其的支持还是有限。因此要在现有的硬件和网络环境下,要实现真正的模拟真实世界的三维互动内容,必须突破硬件渲染和网速的限制,开发出一种高压缩比,可以高速率传输的文件标准,同时可以利用有限硬件资源实现高速三维图形的逼真渲染技术。

发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种场景下载速度快、渲染效率高、可提高运行速度的基于浏览器的三维场景构建方法。本发明的目的可以通过以下技术方案来实现一种基于浏览器的三维场景构建方法,该方法包括以下步骤I)制作原始三维场景模型,通过三维压缩算法将原始三维场景模型压缩为需要的三维场景文件,并保存至服务器中;2)通过浏览器下载服务器上的三维场景文件,并根据文件大小设定下载的线程数,同时设定三维场景文件下载的优先级;3)将下载的三维场景文件加载到客户端的资源管理器中;4)对资源管理器中的三维场景进行渲染,从而生成最终的三维场景。 所述的三维压缩算法包括场景数据压缩和纹理数据压缩。所述的场景数据压缩具体是通过对场景数据中点、面、几何体根据空间信息进行分析和整合,压缩场景数据。所述的纹理数据压缩包括多重纹理的关联压缩、像素贴图的过程化和纹理贴图的最大化拼接压缩。所述的对三维场景进行渲染具体首先对场景中的物件进行可见性剔除,包括视锥裁减和背面剔除,然后根据场景的材质对场景进行分组渲染。与现有技术相比,本发明具有以下优点I)本发明通过专用压缩算法对原始三维场景模型进行压缩,大大减小了网络传输数据量,是三维场景数据在网页上流畅运行的技术保证;
2)本发明根据文件大小来设定三维场景数据的下载线程数,以加快文件的下载速度;3)本发明可以减少项目的内存开销,在低端机器配置下,也能有流畅的视角效果;4)本发明渲染时首先对场景中的物件进行可见性剔除,加快了渲染速度;5)本发明根据场景的材质对场景进行分组渲染,可以减少渲染管道的材质切换,加快渲染速度。


图1为本发明方法的流程示意图。
具体实施例方式下面结合附图和具体实施例对本发明进行详细说明。实施例如图1所示,一种基于浏览器的三维场景构建方法,该方法包括以下步骤在步骤SlOl中,制作原始三维场景模型,通过三维压缩算法将原始三维场景模型压缩为需要的三维场景文件,并保存至服务器中。所述的三维压缩算法包括场景数据压缩和纹理数据压缩两个步骤。第一步场景数据的压缩场景数据由顶点(Vertex)构成三角面(Triangle),由三角面构成几何体(Mesh),并由巾贞数据构成关键巾贞动画(KeyFrame Animation)和骨豁动画(SkeletonAnimation),本实施例在场景中通过空间划分算法找出大量相同或相似的点、面和几何体,对空间信息重新分析和整理,最终将场景数据源从数百兆压缩到几兆。第二步纹理数据的压缩纹理数据在3D数据中占的比重更大,纹理数据由一系列的材质纹理参数设定和一系列的图片组成,这些图片数据的大小决定了纹理数据的大小。当场景规模较大时,或者需要复杂的多重材质纹理混合,譬如漫反射贴图(Diffuse Map)、阴影贴图(Light Map)、高光贴图(Specula Map)、法线贴图(Normal Map)、以及动画贴图(Animation Map),就需要大量的图片素材,这导致了纹理数据变得非常巨大。JPEG图像压缩算法或DDS纹理压缩算法可以将位图数据压缩到10-20倍,但为了实现一个真实的表面纹理材质,需要大量的贴图进行纹理混合,所以简单的使用JPEG或DDS对纹理图像进行压缩远远不够。本实施例纹理数据的压缩主要通过多重纹理的关联压缩(Reference Map Algorithm)、像素贴图的过程化(Procedure Map)、纹理贴图的最大化拼接压缩(Maximize Seamless Algorithm)来大量减少纹理的数据量。通过本实施例的三维压缩算法对原始三维场景模型进行压缩,可大大减小了网络传输数据量,是三维场景数据在网页上流畅运行的技术保证。在步骤sl02中,通过浏览器下载服务器上的三维场景文件,并根据文件大小设定下载的线程数,同时设定三维场景文件下载的优先级。本实施例采用IM以下的文件用单线程下载,IM以上、2M以下的文件采用2个下载线程,2M以上的文件采用4个下载线程,这样可以加快场景文件的下载速度。下载的优先级可根据用户的体验需求来设定,比如先下载地形、基础物件等,然后下载副本场景等。在步骤sl03中,将下载的三维场景文件加载到客户端的资源管理器中。根据场景中物件的类型,分别加入到场景管理器中。同时对场景模型进行场景节点管理,比如克隆模型,即采用同一份内存创建场景节点,这样可以减少项目的内存开销,在低端机器配置下,也能有流畅的视角效果。在步骤S104中,对资源管理器中的三维场景进行渲染,从而生成最终的三维场景。所述的对三维场景进行渲染具体首先对场景中的物件进行可见性剔除,包括视锥裁减和背面剔除,然后根据场景的材质对场景进行分组渲染。利用可见性剔除方法,从模型坐标转换阶段之前剔除对最终图像渲染没有贡献的场景部分,然后将剩余场景发送到渲染管道,能有效降低场景的复杂程度和图形流水线的负担,是提高场景渲染效率的一种非常有效的方法。根据场景的材质对场景进行分组渲染可以减少渲染管道的材质切换,加快渲染速度。以上述依据本发明的理想实施例为启示,通过上述的说明内容,相关工作人员完全可以在不偏离本项发明技术思想的范围内,进行多样的变更以及修改。本项发明的技术性范围并不局限于说明书上的内容,必须要根据权利要求范围来确定其技术性范围。
权利要求
1.一种基于浏览器的三维场景构建方法,其特征在于,该方法包括以下步骤 1)制作原始三维场景模型,通过三维压缩算法将原始三维场景模型压缩为需要的三维场景文件,并保存至服务器中; 2)通过浏览器下载服务器上的三维场景文件,并根据文件大小设定下载的线程数,同时设定三维场景文件下载的优先级; 3)将下载的三维场景文件加载到客户端的资源管理器中; 4)对资源管理器中的三维场景进行渲染,从而生成最终的三维场景。
2.根据权利要求1所述的一种基于浏览器的三维场景构建方法,其特征在于,所述的三维压缩算法包括场景数据压缩和纹理数据压缩。
3.根据权利要求2所述的一种基于浏览器的三维场景构建方法,其特征在于,所述的场景数据压缩具体是通过对场景数据中点、面、几何体根据空间信息进行分析和整合,压缩场景数据。
4.根据权利要求2所述的一种基于浏览器的三维场景构建方法,其特征在于,所述的纹理数据压缩包括多重纹理的关联压缩、像素贴图的过程化和纹理贴图的最大化拼接压缩。
5.根据权利要求1所述的一种基于浏览器的三维场景构建方法,其特征在于,所述的对三维场景进行渲染具体首先对场景中的物件进行可见性剔除,包括视锥裁减和背面剔除,然后根据场景的材质对场景进行分组渲染。
全文摘要
本发明涉及一种基于浏览器的三维场景构建方法,该方法包括以下步骤1)制作原始三维场景模型,通过三维压缩算法将原始三维场景模型压缩为需要的三维场景文件,并保存至服务器中;2)通过浏览器下载服务器上的三维场景文件,并根据文件大小设定下载的线程数,同时设定三维场景文件下载的优先级;3)将下载的三维场景文件加载到客户端的资源管理器中;4)对资源管理器中的三维场景进行渲染,从而生成最终的三维场景。与现有技术相比,本发明具有场景下载速度快、渲染效率高、可提高运行速度等优点。
文档编号G06T15/00GK103021023SQ20121051625
公开日2013年4月3日 申请日期2012年12月5日 优先权日2012年12月5日
发明者谭青生, 周哲, 吴波 申请人:上海创图网络科技发展有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1