三维动态场景建立方法与流程

文档序号:12805061阅读:1635来源:国知局
三维动态场景建立方法与流程

本发明属图像处理、虚拟现实技术和三维建模领域,具体涉及一种基于的三维动态场景建立方法。



背景技术:

虚拟现实技术是仿真技术的一个重要方向,是仿真技术与计算机图形学、人机接口技术、多媒体技术、传感技术、网络技术等多种技术的集合,是一门富有挑战性的交叉技术前沿学科和研究领域。三维模型建立是虚拟现实技术中的一个重要的内容,已经用于各种不同的领域。在医疗行业使用它们制作器官的精确模型,电影行业将它们用于活动的人物、物体以及现实电影,视频游戏产业将它们作为计算机与视频游戏中的资源,在科学领域将它们作为化合物的精确模型,建筑业将它们用来展示提议的建筑物或者风景表现,工程界将它们用于设计新设备、交通工具、结构以及其它应用领域。在最近几十年,地球科学领域开始构建三维地质模型。

虚拟现实技术是一种新兴的技术,目前该领域的研究主要采用direct3d的实现方法,生成的场景交互性差,且模型文件较大,针对这一问题,本发明通过opengl技术实现场景动态模拟效果,并创造了新的构造场景中实现实物对象构造的方法。



技术实现要素:

为解决现有技术存在的问题,本发明提供一种三维动态场景建立方法,分类构建三维观察坐标系、环境、实物对象和音效。

可选的,所述的三维动态场景建立方法包括:

s1:建立三维观察坐标系,并通过视窗变换在窗口上观察到三维场景动态效果;

s2:环境的构造,为所述三维动态场景建立;

s3:实物对象的构造,为所述三维动态场景建立实物对象;

s4:设置声效并建立交互控制机制。

可选的,步骤s1包括:

建立三维观察坐标系;

将世界坐标系转化为所述三维观察坐标系;以及

通过视窗变换,在窗口上观察到三维场景动态效果。

可选的,将世界坐标系转化为所述三维观察坐标系的方法包括:

指定世界坐标系中p(x0、y0、z0)为观察原点,则通过以下变换观察坐标系原点移到世界坐标系原点;

设置组合旋转矩阵的单位向量u,v,n,则变换矩阵为:

将前面的平移和旋转矩阵相乘获得坐标交换矩阵:

可选的,所述视窗变换的方法为:将所述三维观察坐标系中的各点坐标值转换到投影坐标系中,并保持图形各个部分在x,y方向上的比例恒定。

可选的,步骤s2包括天空、地形和光照的模拟构建。

可选的,所述天空的模拟构建通过构建天空盒实现,包括:

将远景渲染成6种纹理贴图,分别应用到立方体的6个面,同时确保摄像机始终位于所述立方体的中心;以及

把六张纹理贴图组合成一个正方体,构成天空盒。

可选的,所述地形的模拟构建包括:使用三角形网络模拟技术,使用一系列关键点定位凹凸不平的地形,并把这些点连接成三角形网格形成数字地形模 型。

可选的,所述光照的模拟构建包括:

定义全局环境光,设置观察点位置,建立场景光照模型并向场景中加入光照;

为所有的物体的顶点定义法线向量,以决定物体相对于光源的方向;

创建、选择一个或者多个光源,并为光源定位;

创建并选择光照模型,以决定全局环境光照的程度和视点的有效位置。

可选的,步骤s3包括:

构造实物对象中的各个对象分支,作为一个子类;

将子类合成到一个实物对象的父类中;以及

使用纹理映射的方法将实物的纹理映射到相应的实物对象上去,以对所述实物对象着色。

可选的,步骤s4包括:

采用quicktime7sdk技术,实现quicktime多媒体文件播放,使得听觉通道和视觉通道同时工作;

建立以眼睛坐标为中心、远距离d为半径的球坐标观察系,灵活控制用户观察的位置和角度,实现自由观察;以及

定义keypress函数对key触发进行分类,实现控制键设置。

可选的,所述三维场景建立方法基于opengl实现。

本发明提供了一种三维动态场景建立方法,包括:建立三维观察坐标系,并通过视窗变换在窗口上观察到三维场景动态效果;构建环境和实物对象;设置声效并建立交互控制机制。本发明基于opengl的特点,在对实物对象的构造过程中,突破了传统的构造方法,提出了分类构造思想,简化了构造过程,降低了构造难度,提高了构造效率,尤其对复杂的实物模型具有很好的效果,本发明成功实现实物对象构造,模拟地形,实现音效,真实实现了三维动态场景的建立。

附图说明

图1为本发明一实施例所述的三维动态场景建立方法的流程图;

图2为本发明一实施例所述的三维动态场景建立方法中天空盒构建的示意 图;

图3为本发明一实施例所述的三维动态场景建立方法中地形构建的示意图;

图4为本发明一实施例所述的三维动态场景建立方法中实物对象构建的示意图。

具体实施方式

以下结合附图和具体实施例对本发明作进一步详细说明。根据下面说明和权利要求书,本发明的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比率,仅用以方便、明晰地辅助说明本发明实施例的目的。

为使本发明解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面将结合附图对本发明实施例的技术方案作进一步的详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明提供一种三维动态场景建立方法,提出分类构建的思想,具体地为分类构建三维观察坐标系、环境、实物对象和音效。如图1所示,该方法包括:

s1:建立三维观察坐标系,并通过视窗变换在窗口上观察到三维场景动态效果;

s2:环境的构造,为所述三维动态场景建立;

s3:实物对象构造,为所述三维动态场景建立实物对象;

s4:设置声效并建立交互控制机制。

下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。

步骤s1:建立三维观察坐标系,首先建立观察用到坐标系,完成世界坐标系到观察坐标系的变化,最后通过视窗变换,在窗口上观察到三维场景动态效果。

其中,步骤s1具体包括

步骤s11、建立三维观察坐标系,首先在世界坐标系中系中选定一点p作为观察原点;

步骤s12、世界坐标系到观察坐标系的变化,指定p(x0、y0、z0)为观察原 点,则通过以下变换观察坐标系原点移到世界坐标系原点。

步骤s13、设置组合旋转矩阵的单位向量u,v,n,则变换矩阵为:

步骤s14、将前面的平移和旋转矩阵相乘获得坐标交换矩阵:

步骤s15、窗口到视口变换,把观察坐标系中的各点坐标值转换到投影坐标系中,并保持图形各个部分在x,y方向上的比例恒定。

步骤s2环境的构造。

其中,该步骤具体包含

步骤s21、如图2所示,通过天空盒实现天空的模拟构建,将远景渲染成6种纹理贴图,每个纹理应用到立方体的一面,同时确保摄像机始终位于立方体的中心;以及

把六张纹理组合成一个正方体,就构成了天空盒。

步骤s22地形构造:

使用三角形网络模拟技术,使用一系列关键点定位凹凸不平的地形,并把这些点连接成三角形网格形成数字地形模型。如图3所示,在本实施例中,以16*16像素的bmp图像为例,产生16*16个关键点,形成邻接的15*15*2个三角面。

步骤s23光照模拟:

定义全局环境光,设置观察点位置,建立场景光照模型向场景中加入光 照;

为所有的物体的顶点定义法线向量,这些法线向量决定了物体相对于光源的方向;以及

创建、选择一个或者多个光源,并为光源定位;

创建并选择光照模型,它决定了全局环境光照的程度和视点的有效位置。

步骤s3实物对象构造。

该步骤包括:

步骤s31、构造实物对象中的各个对象分支,作为一个子类;以及

步骤s32、将子类合成到一个实物对象的父类中。

如图4所示,以一个实物对象孩子为例,由其身体的左右脚和身躯开始分类,并逐层往下建立多个对象分支。由此可见,复杂的实物对象可以用多个简单的分支来构成,在构建组合体时需要注意组合体的特点,对于子类的缩放,平移,旋转等效果同时对父类和所以对象分支无效,单独执行,而对于父类而言同时对所有子类有效。

步骤s33实物对象着色:

使用纹理映射的方法将实物的纹理映射到相应的实物对象上去。

步骤s4、声效的设置和交互控制技术;

步骤s41、采用quicktime7sdk技术,实现quicktime多媒体文件播放,使得听觉通道和视觉通道同时工作。

步骤s42、实现自由观察,建立一个以眼睛坐标为中心的,远距离d为半径的球坐标观察系,灵活控制用户观察的位置,角度等参数,实现自由观察。

步骤s43、定义keypress函数对key触发进行分类,实现控制键设置。

本发明提供了一种三维动态场景建立方法,包括:建立三维观察坐标系,并通过视窗变换在窗口上观察到三维场景动态效果;构建环境和实物对象;设置声效并建立交互控制机制。本发明基于opengl的特点,在对实物对象的构造过程中,突破了传统的构造方法,提出了分类构造思想,简化了构造过程,降低了构造难度,提高了构造效率,尤其对复杂的实物模型具有很好的效果,本发明成功实现实物对象构造,模拟地形,实现音效,真实实现了三维动态场景的建立。

显然,本领域的技术人员可以对发明进行各种改动和变型而不脱离本发明 的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1