基于动态Billboard技术的三维场景绘制简化方法技术

技术编号:2944848 阅读:902 留言:0更新日期:2012-04-11 18:40
本发明专利技术是基于动态Billboard技术的三维场景绘制简化方法,涉及一种高效、实时的动态三维场景绘制简化及大规模动态三维场景实时绘制技术,属于计算机应用领域,特别是计算机图形学、虚拟现实技术领域。该方法用二维图像的实时变形结果来替代三维场景中虚拟物体的动态表示。将真实的模型投影成二维图像,然后针对投影图像标定变形区域的简单骨骼框架;通过控制曲线式骨骼模型,实现二维图像角色或物体的动作变形;采用绘制到纹理技术,将变形结果实时绑定到Billboard板上,从而简化场景绘制复杂度,实现大规模动态场景的实时绘制。实验表明该方法在大规模重复或近似物体的变形场景绘制中,可以有效解决大规模动态场景真实感和实时性的矛盾。

【技术实现步骤摘要】

本专利技术涉及大规模动态三维场景实时绘制技术、基于动态Billboard的变形 物体绘制简化技术。本专利技术是一种高效、实时的动态三维场景绘制简化方法, 属于计算机应用领域,特别是计算机图形学、虚拟现实
技术背景虚拟环境趋向大型化、复杂化,而实时性又是虚拟现实系统所追求的重要 目标之一。在现有的计算机软硬件条件下,模型的复杂度与绘制复杂度和实时 性三者之间存在着很大的矛盾,此消彼涨,很难兼顾。特别是大规模动态场景 的绘制,如涉及到人的大型广场文艺表演仿真,大型公共场所仿真,涉及到环 境的室外自然场景仿真、战场环境仿真等,场景大、涉及人物等角色模型数量 多,往往会有几千个角色同时运动,传统的变形方法变形准确但计算量大,无 法实现实时性计算和场景绘制。三维场景中模型的动态变形需要大量的计算资源,大规模三维模型的变形 或角色动作, 一般采用离散LOD (Level Of Details)方法减少绘制三角形以加 快绘制速度,但存在的问题是,当LOD简化层次过大时,模型变的非常粗糙, 变形动作连贯性差,严重影响真实感。即便如此,当场景中有上千规模的角色 同时进行动作变形时,仍然无法达到实时计算和动态场景绘制。Billboard (广告牌)是一种常用的场景绘制模型简化技术,使用朝向观察者 的平面板代替模型绘制,能够很好的实现大量复杂模型的实时性绘制问题。 Billboard技术广泛应用于粒子系统和复杂模型简化。该技术将模型投影成一幅 图像,并在图像中设置非模型区域的透明属性,实际绘制时,绘制贴像纹 理的四边形。为展现三维模型不同视点下的立体多样特性提出的三板Billboard 技术,可以实现从不同角度观察模型得到不同的结果,更加接近三维视觉效果。 目前,Billboard的贴图都采用静态纹理,大大限制了其应用的范围。模型的变形是计算机图形学中的传统课题,模型的变形按应用分类,大体 分为二维图像变形、三维几何体变形和流体变形。针对模型的变形,研究者们 展开了研究,如基于骨骼的变形、基于FFD的变形、基于弹簧模型变形、基于无网格法的变形、基于有限元的变形和基于物理的变形。流体变形基本分为两 种方法,欧拉法和拉格朗日法。变形的过程通常要耗费大量的计算资源,因此 对于场景中包含大量变形物体或角色时,无法实现绘制的实时性。本专利技术提出的,针对在包 含大量重复或相近动态变化物体(特别是人物角色或者条状组成的物体)的三 维虚拟场景中,解决绘制过程中的真实感和绘制实时性的矛盾。本专利技术的原理 是采用基于曲线式骨骼的图像变形方法,对三维场景中物体的二维投影或二 维图像进行实时变形,将图像变形结果实时传递到三维场景中的Billboard板 上,简化场景中动态物体的绘制复杂度,从而为大规模场景的实时绘制和漫游 提供技术保证。本专利技术的目的是通过下述步骤实现的。(1) 二维图像的输入对三维场景中动态变化物体进行二维投影,或直接采 用其二维图像。(2) 骨骼模型的建立标定输入图像需变形区域的关节点,根据关节点连接的两骨骼长度、宽度和夹角信息,建立骨骼两侧双曲线方程。通过调整该曲线 的参数,使曲线连接处二次连续可导,避免以往骨骼变形中关节连接处的不平 滑失真。对于每个关节点,设定坐标原点为当前关节点,坐标x轴为关节点两 侧骨骼的角平分线。两侧双曲线可以用公式1表示,其中r为硬度参数,/t为骨骼斜率,汉为两双曲线间的x轴方向距离。为使骨骼模型在变形时分散变形扭曲减小整体变形失真,将模拟骨骼的三角带 均匀分布在模型中心线上,不论骨骼模型如何变化,都能保证三角带内的三角 形同时变化。中心双曲线长度可计算为
技术实现思路
然后根据内侧双曲线焦点计算分割线斜率根据两侧双曲线方程和分割线方程求出两侧双曲线上的分隔点,使用这些顶点 构建三角带,该三角带即为曲线式骨骼模型的中心三角带。三角带的顶点均匀 的分布在两双曲线上,这些顶点可以使用公式4求得,<formula>formula see original document page 7</formula> 其中w是三角带中三角形的数量,/为三角形的序号,^是双曲线的最大y值,a是两双曲线在z方向上的间隔。最后根据骨骼长度计算长度调节矩形, 完成曲线式骨骼模型的建立。(3) 变形动作的设定与计算调整关节点的位置、方向和骨骼间的夹角,设 定该物体的所有关键变形动作。程序运行时,根据当前时刻前后两个关键帧的 状态,插值计算当前时刻各关节点的数据。(4) 图像变形计算为减小变形失真,通过调整两侧双曲线的X方向距离参 数,保持每一个关节点周围的局部图像面积恒定,从而有效减小变形引起的形 状扭曲。每个关节点的变形区域面积可以用公式5表示,其中"是骨骼的倾斜角,<formula>formula see original document page 7</formula> 为使变形区域的面积保持恒定,而与骨骼间的夹角"变化无关,距离参数^采用公式6求得,<formula>formula see original document page 7</formula> (6)从原始图像的骨骼模型中提取标准纹理图,并组合成规则的纹理图像,使用曲 线骨骼模型作为源坐标,使用规则网格模型作为目标坐标,进行渲染即可得到 标准纹理图。最后,根据网格的变形实现图像变形。(5) 绑定生成Billboard板采用绘制到纹理(Render to Texture)技术,在显 存中申请离屏绘制对象FBO(Frame Buffer Object)和一定尺寸的纹理空间,该纹 理大小与绘制视窗一致,在申请方式上与普通的纹理相同,并将该纹理与FBO 对象绑定。在变形绘制之前,将绘制目标设定为FBO对象,则运行结果绘制到 指定纹理空间中,此时图像的变形结果实时绘制到显存纹理中。绘制完毕之后, 将绘制目标重置为帧缓冲区,并传递该纹理的纹理ID给绘制过程,即实现了该纹理贴图到Billboard板上,使得当前Billboard的纹理内容是当前运行时刻的图 像变形的结果。在每一帧绘制中,首先根据角色的运动路线计算出物体在场景中的实际位 置,根据观察者所在的位置和角色的高度宽度值,计算Billboard顶点的实际位 置坐标。使用一个Billboard板代替三维场景中一个动态物体。最终生成所需要 的大规模动态场景的实时绘制。有益效果本专利技术的优点是实时计算二维图像变形纹理,通过多Billboard复用纹理, 实现多角色同步变形,在保证绘制真实感的前提下,实现大规模角色变形的实 时绘制。附图说明图1算法流程图;图2变形网格创建原理图;图3单个角色完整变形网格示意图;图4基于曲线式骨骼的图像变形结果图;图5角色运动场景绘制效果图。具体实施方式下面结合附图和实施例对本专利技术作进一步说明。图1是本专利技术的算法的流程图,本专利技术方法按照图1流程,运行包括如下 具体步骤(l)二维图像的输入对三维场景中动态变化人物角色进行二维投影,或直接采用其二维图像。 C2)骨骼模型的建立1) 对图像变形区域标定变形关节点。2) 参照图2,为每一个关节点建立变形网格。根据关节点连接的两骨骼长度、 宽度和夹角信息,建本文档来自技高网
...

【技术保护点】
基于动态Billboard技术的三维场景绘制简化方法,其特征在于包括如下步骤:    (1)二维图像的输入:对三维场景中动态变化的物体进行二维投影,或直接采用其二维图像,作为输入数据;    (2)骨骼模型的建立:标定输入图像需变形区域的关节点,连接关节点形成骨骼,生成骨骼三角带变形网格;    (3)变形动作的设定与计算:调整关节点的位置、方向和骨骼间的夹角,设定该物体的所有关键变形动作;程序运行时,根据当前时刻前后两个关键帧状态,插值计算当前时刻各关节点的数据;    (4)图像变形计算:根据当前运行时刻的关节点数据,改变骨骼模型的参数,并更新三角带变形网格,从而实现图像的变形;    (5)绑定生成动态Billboard板:将图像的变形结果实时绘制到显存纹理中,然后将该纹理贴图到Billboard板上,使得当前Billboard的纹理内容是当前运行时刻的图像变形的结果,实现动态Billboard;    (6)场景绘制:使用一个动态Billboard板代替三维场景中一个动态物体,实现最终动态场景绘制。

【技术特征摘要】

【专利技术属性】
技术研发人员:黄天羽李凤霞陈宇峰陈红倩张艳李立杰
申请(专利权)人:北京理工大学
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1