[发明专利]基于不规则区域的自适性的Loop细分曲面的绘制方法有效
申请号: | 201410021013.7 | 申请日: | 2014-01-17 |
公开(公告)号: | CN103810756A | 公开(公告)日: | 2014-05-21 |
发明(设计)人: | 冯结青;黄韵岑 | 申请(专利权)人: | 浙江大学 |
主分类号: | G06T17/30 | 分类号: | G06T17/30 |
代理公司: | 杭州天勤知识产权代理有限公司 33224 | 代理人: | 胡红娟 |
地址: | 310027 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 不规则 区域 loop 细分 曲面 绘制 方法 | ||
技术领域
本发明涉及计算机图形学细分曲面绘制领域,具体涉及一种基于不规则区域的自适应性的Loop细分曲面的绘制方法。
背景技术
细分曲面,在计算机图形学领域,用于任意拓扑的网格创建光滑曲面。细分曲面定义为一个无穷细化过程的计算。通过反复细化初始的多边形网格,可以产生一系列网格趋于最终的细分曲面。每个新的细化步骤产生一个新的有更多多边形元素并且更光滑的网络。Loop细分曲面作为其中比较具有代表性的一个细分策略,在电子游戏,电影制作以及有限元仿真等应用中广泛使用,参见C.Loop,Smooth subdivision surfaces based on triangles,Master’s thesis,Dept.of Math.,Univ.of Utah(1987)。Loop细分曲面是针对任意拓扑的三角形控制网格设计的,区别于Catmull-Clark细分曲面,参见E.Catmull,J.Clark,Recursively generated b-spline surfaces on arbitrary topological meshes,Computer-Aided Design10(6)(1978)350–355。
传统的细分曲面是根据细分规则,循环地细分控制网格计算得出的。虽然这种方法在当代的GPU上是很容易实现的。但是,指数增长的内存占有量和数据传输量会严重的影响运行效率。随着DirectX11API的出现,其中的硬件tessellation着色器,可在GPU流多处理上,直接计算、生成、绘制细分的几何,达到避免高代价的内存输入输出,绘制精细几何细节的高质量曲面绘制的目的,参见Microsoft Corporation,Direct3D11Features,http://msdn.microsoft.com/en-us/library/ff476342(VS.85).aspx(2009)。但是,硬件tessellation绘制曲面是逐面片计算的。虽然它能够用于直接计算规则面片,但对于如奇异顶点,准尖锐折痕和分层次的编辑这样的不规则区域,无法直接计算。
目前已有的Loop细分绘制方法可分成三大类。首先,全局细分方法。该类方法通过全局的对输入控制网格循环的细分实现。此类方法的内存消耗随生成的顶点数量线性增长。由于GPU的带宽限制,造成性能的严重下降,参见L.Shiue,I.Jones,J.Peters,A realtimegpu subdivision kernel,ACM Transactions on Graphics24(3)(2005)1010–1015。第二,直接计算方法。该类方法是对细分曲面的细分矩阵的特征矩阵解析分析,直接计算求解细分曲面,参见J.Stam,Evaluation of Loop subdivision surfaces,in:ACM SIGGRAPH99Course Notes#37,SIGGRAPH’99,ACM,New York,NY,USA,1999,pp.111–125。虽然此类方法在GPU上容易实现,但由于大量的程序代码分支,导致运行性能较差。此外,该类方法需要奇异点分离,因此,需要对初始控制网格做一次到两次的预细分,这样处理之后的控制网格的顶点和面片数量都将大量增加;而且,该类方法无法处理造型常见的准尖锐折痕以及分层次编辑。最后,基于面片的逼近算法。该类算法基本细想是寻找一个逼近不规则区域的解,提高绘制效率,牺牲绘制质量。该类方法利用硬件tessellation着色器绘制细分曲面,参见文献G.Li,C.Ren,J.Zhang,W.Ma,Approximation of Loop subdivision surfaces for fast rendering,IEEE Transactions on Visualization and Computer Graphics17(4)(2011)。
发明内容
针对现有技术的不足,本发明提供了一种基于不规则区域的自适应GPU绘制Loop细分曲面方法。
一种基于不规则区域的自适应性的Loop细分曲面的绘制方法,包括:
(1)输入三角控制网格,并设定最大细分层数和全局细分参数;
(2)确定三角控制网格的不规则区域,并以该不规则区域作为三角控制网格的第零层拓扑结构,根据第零层拓扑结构生成三角控制网格的第零层细分查找表,根据第零层细分查找表构建三角控制网格的第一层拓扑结构,并根据第一层拓扑结构生成三角控制网格的第一层细分查找表;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410021013.7/2.html,转载请声明来源钻瓜专利网。