一种基于LOD技术的场地渲染方法技术

技术编号:15331318 阅读:102 留言:0更新日期:2017-05-16 14:36
本发明专利技术公开了一种基于LOD技术的场地渲染方法,包括确定正方形的渲染地形,利用四叉树分割渲染地形,更新遍历渲染地形以及修补龟裂地形等步骤。LOD技术是分阶段调整网格数据精密度的技术,对距离视点较远的三角形粗糙一些,而距离视点较近的三角形则有较为细腻的表现。使用LOD技术后,对大型场景的渲染效果在效率及效果上均有较大提升,且提高了游戏的运行速度。

A method of site rendering based on LOD Technology

The invention discloses a site rendering method based on LOD technology, which comprises the determination of square rendering terrain, the use of four fork trees to segment rendering terrain, update traversal rendering terrain, and repair cracked terrain and other steps. LOD technology is a technique to adjust the precision of grid data in stages, which is more rough than the triangle whose distance is far away from the viewpoint, while the triangle near the point of view is more delicate. After using LOD technology, the rendering efficiency of large-scale scenes has been greatly improved, and the running speed of the game has been improved.

【技术实现步骤摘要】
一种基于LOD技术的场地渲染方法
本专利技术涉及游戏引擎
,具体涉及一种基于LOD技术的场地渲染方法。
技术介绍
游戏引擎是一系列高级代码,可以以它为基础开发自己的游戏。现代游戏引擎已经对那些使用它的人隐藏了底层实现的细节和规范。游戏引擎包括:渲染引擎、物理引擎、声音引擎、场景管理等。游戏引擎本身只是一个由更小的引擎组成的集合。游戏引擎或它涵盖的内容并没有一个精确的定义。对视频游戏而言,它的游戏引擎至少要包含渲染引擎和输入引擎,这是必需的,否则,就不能叫其为交互式游戏。微软的DirectXSDX是一种开发游戏引擎的常用软件开发包,该白发包包括6个组件:①DirectDraw:使用页面切换的方法实现动画,它不仅可以访问系统内存,还可以访问显示内存。②Direct3D:提供了3D硬件接口。③DirectSound:立体声和3D声音效果,同时管理声卡的内存。④DirectPlay:支持开发多人网络游戏,并能处理游戏中网络之间的通信问题。⑤DirectInput:为大量的设备提供输入支持。⑥自动安装DirectX驱动程序。有了3D编程环境,再使用微软的开发系统VisualC++编写程序,使3D游戏引擎的开发具有极大的自由度。国外对三维游戏引擎的研究主要集中在几个大公司,包括:IdSoftware、Valve、3DRealms等,这些公司研究开发了一批优秀的3D引擎,是它们推动了3D游戏引擎的发展。中国游戏市场潜力巨大,在未来几年内,中国将从资金投入、创造产业环境、保护知识产权以及加强对企业引导等方面对国内的游戏企业加以扶持。亚洲将是未来全球网络游戏的重要市场,中国和日本将成为地区最大的两个在线游戏市场。时至今日,业界最著名的引擎包括了Unreal、Gamebryo、BigWorld、Unity3D等一些非常实用的商业引擎,还包括了许多开源的引擎,比如Orge、Irrlicht等,这样就给开发者提供了很好的选择,使引擎技术可以迅速的发展。中国对于游戏引擎起步比较晚,到现在还没有能够走向国际市场的游戏引擎。目前国内引擎的发展和国外有一定差距,从这个意义上说我们现在还处于学习阶段。目前国内游戏市场对3D游戏的需求是呈上升趋势,研究游戏引擎是很大的现实意义的,因此自主研究游戏对我国以后游戏产业必然会产生很大的影响。由于当前游戏场景变得越来越复杂,场景渲染对硬件提出了更加高的要求。为了增加复杂的内容,同样还得考虑物理学、碰撞以及其他会影响到所见到的内容以及与场景进行交互的内容。尤其是大场景地形往往是游戏效率的瓶颈并使得游戏运行速度非常缓慢。渲染系统在游戏引擎的所有部件当中是最复杂的,它的强大与否直接决定着最终的输出画面质量。因此,在游戏引擎的设计中,如何改善渲染系统的效率、从而提高游戏运行速度是一个值得探讨的问题。
技术实现思路
为了改善游戏引擎渲染系统的渲染效率、提高游戏运行速度,本专利技术提供了一种基于LOD技术的场地渲染方法。LOD,即,LevelOfDetail,也就是细节层次。LOD是分阶段调整网格数据精密度的技术,对距离视点较远的三角形可以粗糙一些,而距离视点较近的三角形则应有较为细腻的表现。本专利技术采用的技术方案如下:一种基于LOD技术的场地渲染方法,其特征在于,所述渲染方法包括以下步骤:步骤1:确定渲染地形,所述渲染地形是一大小为(2n+1)×(2n+1)的正方形区域,并且采样间隔均匀;步骤2:分割渲染地形,利用四叉树对二维地形平面进行分割,每次把所述正方形区域分割成四个等分的小正方形,直到分割后的小正方形尺寸达到预定值N为止,该四叉树将整个正方形区域分割成2(N+1)块小正方形地形;步骤3:更新渲染地形,针对步骤2已经分割好的四叉树进行深度遍历,判断当前的节点是否可见,若当前节点不可见则返回步骤2,若当前节点可见则判断当前节点的LOD值是否是预定值N,若当前节点的LOD值不是预定值N则进行查找子节点,否则进行设置当前需要块的绘制信息;步骤4:修补龟裂地形,从步骤3获取当前需要块的绘制信息,计算出当前需要渲染的节点中心点信息,然后判断当前节点是否可见,若当前节点不可见就返回步骤3,否则进行判断当前节点是否是渲染的LOD值,若当前节点不是渲染的LOD值就分割成四个子节点,否则对龟裂地形进行修补;其中,n,N均为自然数。进一步地,通过边删除技术修补龟裂地形,即在层级较低的节点的裂缝处删除一条边,把原来两个相邻的三角形合并成了一个三角形。进一步地,通过边插入技术修补龟裂地形,即在层次较高的节点内部增加一条边,将原来产生裂缝的三角形剖分成了两个三角形。由于采用了上述技术方案,本专利技术取得了有益的技术效果:使用LOD技术后,对大型场景的渲染效果在效率及效果上均有较大提升,同时LOD地形大大提高了游戏的运行速度。附图说明图1为KAN3D游戏引擎架构图。图2为渲染地四叉树分割图。图3为渲染地T形裂缝示意图。图4为龟裂地形修补示意图。图5为采用LOD技术前后的渲染效果对比图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合实施例对本专利技术进行进一步详细说明,但本专利技术要求保护的范围并不局限于下述具体实施例。本实施例使用DirectX软件开发包自主开发了命名为KAN3D的游戏引擎,具体包括构建在Direct3D基础上的渲染引擎、构建在DirectInput基础上的输入系统、构建在DirectSound基础上的声音系统、处理碰撞和运动的物理系统、动画系统和简单的人工智能系统、场景管理系统。本引擎还使用命令和属性脚本的基本脚本能力和图形用户界面(GUI)系统。GUI系统用于创建主菜单、加载场景等。上述游戏引擎的架构图参见图1。KAN3D游戏引擎渲染系统将会是最大的系统。渲染系统可以在屏幕上绘制几何图形,显示文本,渲染图形用户界面(GUI)。同样,它还要将图像添加到场景中的几何图形表面上。它是引擎最重要的功能之一,负责游戏画面的实时渲染(realtimerendering)。当3D模型制作完毕之后,美工会按照不同的面把材质贴图赋予模型,这相当于为骨骼蒙上皮肤,最后再通过渲染引擎把模型、动画、光影、特效等所有效果实时计算出来并展示在屏幕上。渲染引擎在引擎的所有部件当中是最复杂的,它的强大与否直接决定着最终的输出画面质量。由于场景变得越来越复杂,可以发现场景渲染对硬件提出了更加高的要求。为了增加复杂的内容,同样还得考虑物理学、碰撞以及其他会影响到所见到的内容以及与场景进行交互的内容。在3D游戏开发早期,硬件不能快速渲染场景,这一点显而易见。如果要从任意一款现代游戏中截取一副场景,并想要像在本书中一直在渲染的物体和场景一样渲染它,或许可以幸运地每秒获取一帧场景,更不奢望每秒30帧或60帧了。游戏中,大场景地形往往是游戏效率的瓶颈并使得游戏运行速度非常缓慢,为了解决这个问题引入了LOD技术。LOD,即,LevelOfDetail,也就是细节层次。LOD是分阶段调整网格数据精密度的技术,采用该技术的理由是距离视点较远的三角形可以粗糙一些,而距离视点较近的三角形则应有较为细腻的表现。本实施例公开的一种基于LOD技术的场地渲染方法,包括以下步骤:步骤1:确定渲染地形,所述渲染地形是一大小为(2n+1)×(2n+1)的正方本文档来自技高网
...
一种基于LOD技术的场地渲染方法

【技术保护点】
一种基于LOD技术的场地渲染方法,其特征在于,所述渲染方法包括以下步骤:步骤1:确定渲染地形,所述渲染地形是一大小为(2

【技术特征摘要】
1.一种基于LOD技术的场地渲染方法,其特征在于,所述渲染方法包括以下步骤:步骤1:确定渲染地形,所述渲染地形是一大小为(2n+1)×(2n+1)的正方形区域,并且采样间隔均匀;步骤2:分割渲染地形,利用四叉树对二维地形平面进行分割,每次把所述正方形区域分割成四个等分的小正方形,直到分割后的小正方形尺寸达到预定值N为止,该四叉树将整个正方形区域分割成2(N+1)块小正方形地形;步骤3:更新渲染地形,针对步骤2已经分割好的四叉树进行深度遍历,判断当前的节点是否可见,若当前节点不可见则返回步骤2,若当前节点可见则判断当前节点的LOD值是否是预定值N,若当前节点的LOD值不是预定值N则进行查找子节点,否则进行设置当...

【专利技术属性】
技术研发人员:叶成景杨叶芬卢宁
申请(专利权)人:广东科学技术职业学院
类型:发明
国别省市:广东,44

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

1