网络游戏中的海岸线生成方法技术

技术编号:8079012 阅读:224 留言:0更新日期:2012-12-13 21:54
本发明专利技术公开了一种网络游戏中的海岸线生成方法,该方法包括:遍历场景中的水域地形三角形;将遍历得到的所有水域地形三角形的顶点进行排序,得到海岸线点数据;根据所述海岸线点数据生成海岸线。本发明专利技术的这种网络游戏中的海岸线生成方法因生成海岸线时遍历的数据较少,因此可以大幅提高海岸线生成效率。

【技术实现步骤摘要】

本专利技术涉及网络游戏
,特别涉及一种。
技术介绍
在很多网络游戏场景中需要对海洋环境进行模拟,在对海洋进行模拟时,首先要解决的问题就是海岸线的生成。现有海岸线的生成方法如下遍历场景地形中的所有三角形,找出其中与预先设定的水平面相交的三角形,求出其相交线段,将所有的相交线段储存到一个总表中。这些相交线段就是海岸线的组成边, 但这些组成边还没有形成海岸线,无法用他们生成成独立的海岸网格图(mesh)。下一步就是要把这些组成边串起来,形成海岸线。首先生成一个空的海岸线表1,然后把总表中的第一个线段放入,并把总表中这个线段删除,然后继续遍历总表中剩下的线段,只要能接到海岸线表I中线段头部或尾部的线段,就分别插入到表I头或者表I尾,并删除总表中的这些线段数据,最后当总表中再没有能添加到表I的线段了,则表示表I已经生成完成,得到一个海岸线表;然后再把总表中的第一个兀素放到表2,米用同样的方法生成表2,最后直到总表的数据为空,则表不所有的海岸线生成完毕。这样,海岸线表I、表2、表3、就表不每条海岸线的数据了。如果要生成后续的海岸mesh,则将上述海岸线表中的海岸线数据向外扩展下,形成海岸线扩展边数据,有了这些数据就可以生成海岸mesh 了。之后,可以进一步根据海岸mesh模拟海浪向岸边涌动的动画效果,使用纹理动画,用sin波来扰动海岸线mesh的纹理坐标值即可模拟出海浪拍岸的效果。在上述方法中,生成海岸线的过程需要遍历场景地形中的所有三角形,海岸线生成效率非常低下。
技术实现思路
有鉴于此,本专利技术提供了一种,可以提高海岸线生成效率。为达上述目的,本专利技术的技术方案具体是这样实现的一种,该方法包括遍历场景中的水域地形三角形;将遍历得到的所有水域地形三角形的顶点进行排序,得到海岸线点数据;根据所述海岸线点数据生成海岸线。优选地,所述排序过程中进一步判断所述顶点构成的曲线是否平滑,若存在突变,则添加顶点,使所述顶点构成平滑曲线。优选地,该方法进一步包括根据所述海岸线生成海岸线模型。优选地,该方法进一步包括通过修改所述海岸线模型顶点ALPHA值,改变海滩模拟效果。优选地,该方法进一步包括保存所述海岸线模型为海岸线模型文件。优选地,该方法进一步包括读取所述海岸线模型文件,通过双余弦波扰动海岸线模型的UV坐标,模拟海浪拍岸效果。优选地,所述保存海岸线模型为海岸线模型文件包括仅保存海岸线模型顶点中,ALPHA值不为O的顶点的数据。由上述技术方案可见,本专利技术的这种因生成海岸线时遍历的数据较少,因此可以大幅提高海岸线生成效率。·附图说明图I为本专利技术实施例的海岸线生成方法示意图。具体实施例方式为使本专利技术的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本专利技术进一步详细说明。本专利技术的海岸线生成方法如图I所示,包括如下步骤步骤101、遍历场景中的水域地形三角形;水域地形三角形是在场景中预先定义的。步骤102、将遍历得到的所有水域地形三角形的顶点进行排序,得到海岸线点数据;步骤103、根据所述海岸线点数据生成海岸线。由于水域大小相比整个地形小很多,所以仅遍历水域地形三角形,可以大幅提高计算速度。优选地,该方法可以进一步包括所述排序过程中进一步判断所述顶点构成的曲线是否平滑,若存在突变,则添加顶点,使所述顶点构成平滑曲线。这样就可以解决现有技术造成的缺口或三角形不能均匀连接等现象。海岸线生成后,即可根据该海岸线进行后续海滩效果模拟。生成了海岸线模型之后,模型所有顶点初始透明度(Alpha)都是0,这时是完全看不到该模型的,只能通过编辑海岸线模型顶点的Alpha值来显示,这样场景设计师就可以自己来确定该海洋哪部分有海滩效果哪部分没有,并且可以通过修改Alpha值还可以达到淡化部分模型以柔化海滩的效果。由于在游戏运行过程中去生成海岸线模型非常耗时,可能还会带来游戏卡顿现象,所以可以将生成好的海岸线模型数据保存为海岸线模型文件。保存海岸线模型顶点时,可以通过判断其Alpha值来确定是否保存该顶点,如果Alpha值是0,那么游戏中必然无法看到该顶点,所以只需要保存Alpha值大于O的顶点即可,这样还可以减少保存的数据量同时可以提升海岸线模型文件读取时间。当有了海岸线模型数据,那么还需要在游戏中实时计算海岸线模型的UV (水平方向是U,垂直方向是V)坐标使其出现海浪拍岸的效果,具体可以使用双余弦波扰动海岸线模型的UV坐标来实现。 以上所述仅为本专利技术的较佳实施例而已,并不用以限制本专利技术,凡在本专利技术的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本专利技术保护的范围之内。权利要求1.一种,其特征在于,该方法包括 遍历场景中的水域地形三角形; 将遍历得到的所有水域地形三角形的顶点进行排序,得到海岸线点数据; 根据所述海岸线点数据生成海岸线。2.如权利要求I所述的方法,其特征在于,所述排序过程中进一步判断所述顶点构成的曲线是否平滑,若存在突变,则添加顶点,使所述顶点构成平滑曲线。3.如权利要求I或2所述的方法,其特征在于,该方法进一步包括 根据所述海岸线生成海岸线模型。4.如权利要求3所述的方法,其特征在于,该方法进一步包括 通过修改所述海岸线模型顶点透明度ALPHA值,改变海滩模拟效果。5.如权利要求4所述的方法,其特征在于,该方法进一步包括 保存所述海岸线模型为海岸线模型文件。6.如权利要求5所述的方法,其特征在于,该方法进一步包括 读取所述海岸线模型文件,通过双余弦波扰动海岸线模型的水平垂直UV坐标,模拟海浪拍岸效果。7.如权利要求5所述的方法,其特征在于,所述保存海岸线模型为海岸线模型文件包括 仅保存海岸线模型顶点中,ALPHA值不为O的顶点的数据。全文摘要本专利技术公开了一种,该方法包括遍历场景中的水域地形三角形;将遍历得到的所有水域地形三角形的顶点进行排序,得到海岸线点数据;根据所述海岸线点数据生成海岸线。本专利技术的这种因生成海岸线时遍历的数据较少,因此可以大幅提高海岸线生成效率。文档编号G06F19/00GK102819685SQ20121029079公开日2012年12月12日 申请日期2012年8月15日 优先权日2012年8月15日专利技术者张广 申请人:北京像素软件科技股份有限公司本文档来自技高网...

【技术保护点】
一种网络游戏中的海岸线生成方法,其特征在于,该方法包括:遍历场景中的水域地形三角形;将遍历得到的所有水域地形三角形的顶点进行排序,得到海岸线点数据;根据所述海岸线点数据生成海岸线。

【技术特征摘要】

【专利技术属性】
技术研发人员:张广
申请(专利权)人:北京像素软件科技股份有限公司
类型:发明
国别省市:

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

1