[发明专利]基于Unity引擎地形系统的道路网格创建方法及装置有效
申请号: | 201810869455.5 | 申请日: | 2018-08-02 |
公开(公告)号: | CN109147050B | 公开(公告)日: | 2022-07-15 |
发明(设计)人: | 陈童 | 申请(专利权)人: | 苏州蜗牛数字科技股份有限公司 |
主分类号: | G06T17/20 | 分类号: | G06T17/20;G06T17/05 |
代理公司: | 北京德崇智捷知识产权代理有限公司 11467 | 代理人: | 王金双 |
地址: | 215000 江苏省*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 unity 引擎 地形 系统 道路 网格 创建 方法 装置 | ||
一种基于Unity引擎地形系统的道路网格创建方法及装置,所述方法包括步骤:从场景中获取采样点,创建道路曲线;获取分段网格的顶点,创建顶点预备数组;创建分段网格的顶点的包围盒及切割面;创建次级顶点预备数组;创建次级顶点预备数组的三角形索引数组;采用切割面切割次级顶点预备数组得到子级顶点预备数组,以及重新组织三角形索引数组得到子级三角形索引数组;基于切割面,得到子级顶点预备数组的UV数组;采用子级顶点预备数组、子级三角形索引数组,以及UV数组,创建道路网格。本发明的基于Unity引擎地形系统的道路网格创建方法及装置,能够创建出完全贴合Unity引擎地形系统的道路模型。
技术领域
本发明涉及图像建模技术领域,特别是涉及一种基于Unity引擎地形系统的道路网格创建方法及装置。
背景技术
Unity是由Unity Technologies公司开发的一个让开发者创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型三维图形引擎。当前的其他游戏引擎,比如CryENGINE3引擎、虚幻4引擎等,都提供了基于Unity引擎地形系统的创建道路的编辑工具,但是Unity引擎并未给开发者提供基于Unity引擎地形系统的创建道路的编辑工具。
创建道路的编辑工具,是一个可以在虚拟三维空间创建模拟现实世界道路模型的工具。创建道路的编辑工具的功能,一般包括,自定义道路的起始点和结束点,调整道路的宽度和高度,调整道路模型的精度,以及将道路模型贴合目标模型等。
当前的一些游戏引擎中,使用的在地形上创建道路的方法,主要为延迟渲染、投影器和创建网格的方法。其中,延迟渲染的方法,通过在延迟渲染阶段采样道路贴图绘制到地形上,但是该方法并不支持在移动设备上实现;投影器的方法,则无法渲染自定义的形状;创建网格的方法,则使用依据路径采样点生成网格方法,在地形系统上设置采样点,采样地形的高度,生成道路模型,但该方法也存在着不能完全的贴合地形,以及道路网格的精细度不够的缺陷。
发明内容
为了解决现有技术存在的不足,本发明的目的在于提供一种基于Unity引擎地形系统的道路网格创建方法及装置,能够创建出完全贴合Unity引擎地形系统的道路模型。
为实现上述目的,本发明提供的基于Unity引擎地形系统的道路网格创建方法,包括以下步骤:
从场景中获取采样点,创建道路曲线;
获取分段网格的顶点,创建顶点预备数组;
创建分段网格的顶点的包围盒及切割面;
创建次级顶点预备数组;
创建次级顶点预备数组的三角形索引数组;
采用切割面切割次级顶点预备数组得到子级顶点预备数组,以及重新组织三角形索引数组得到子级三角形索引数组;
基于切割面,得到子级顶点预备数组的UV数组;
采用子级顶点预备数组、子级三角形索引数组,以及UV数组,创建道路网格。
所述获取分段网格的顶点,创建顶点预备数组的步骤,进一步包括步骤:
根据道路曲线的总长度和道路网格的构建步长,确定道路网格的网格总段数;
根据每一分段网格的中心点的位置、副切线数据和网格宽度信息,计算出每一分段网格的中心点的正副切线方向的顶点位置数据,并将顶点位置数据存储到顶点预备数组。
所述创建次级顶点预备数组的步骤,进一步包括步骤:
根据包围盒的最小点和最大点的位置数据,以及采样步长,确定采样面的起始点、结束点和执行步长,采用Unity引擎地形系统中的GetInterpolatedHeight()方法从场景中获得采样点的位置数据,并将采样点的位置数据存储到次级顶点预备数组。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州蜗牛数字科技股份有限公司,未经苏州蜗牛数字科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810869455.5/2.html,转载请声明来源钻瓜专利网。