基于gpu的实时毛笔墨水扩散模型并行实现方法

文档序号:6509088阅读:342来源:国知局
基于gpu的实时毛笔墨水扩散模型并行实现方法
【专利摘要】本发明公开了一种基于GPU的实时毛笔墨水扩散模型并行实现方法,用于解决现有毛笔墨水扩散模型实时性差的技术问题。技术方案是通过网格化受墨区域含墨顶点集合,建立受墨区域墨水量数据CPU-GPU数据映射关系;利用一对纹理内存组交替读写的模式完成受墨区域墨水量求和,实现GPU并行运算的求和纯并行规约运算;采用基于Box-Muller变换的方法生成高斯随机数,避免分支与循环操作干扰随机数生成流的效率;利用混合线性同余数周期扩展算法对生成的伪随机数进行周期扩展,解决同余数伪随机数周期受制于余数的问题。由于利用GPU对虚拟纸张受墨区域墨水扩散过程进行并行处理,提高了毛笔墨水扩散模型的实时性。
【专利说明】基于GPU的实时毛笔墨水扩散模型并行实现方法
【技术领域】
[0001]本发明涉及一种实时毛笔墨水扩散模型并行实现方法,特别是涉及一种基于GPU的实时毛笔墨水扩散模型并行实现方法。
【背景技术】
[0002]墨水渲染本质上属于流体可视化范畴,包括云、可变形表面体(如布)、水分子流动等可视化模拟。墨水渲染的关键在于模拟复杂无序的墨水分子在纸张上的扩散,这种扩散现象在整个纸张的受墨区域并发、随机的进行,并且随着毛笔笔划在已受墨区域的重复、交错而愈加复杂。基于物理的流体模拟方法可以产生逼真的可视化效果,单从效果上讲,采用基于物理的流体模拟方法应该是最佳选择。但是,绘画系统中的墨水扩散要求实时实现,如果不能够实时,对于绘画系统这样的交互创作平台就失去了意义。而常规的基于物理流体模拟手段由于计算复杂性高,其渲染实现大多都是非实时、离线的,因此并不适用于实时系统需要。采用分子系统模型可以实现基于物理的墨水实时渲染,但是分子系统通常需要分子速度分量数据,在基于GPU的渲染实现中,分子系统中的速度分量信息处理以基于几何点的标准光栅化GPU渲染流方式处理,本质上并不易于实现。

【发明内容】

[0003]为了克服现有毛笔墨水扩散模型实时性差的不足,本发明提供一种基于GPU的实时毛笔墨水扩散模型并行实现方法。该方法通过网格化受墨区域含墨顶点集合,使得GPU以类似于CPU访问数组的方法访问纹理内存,建立受墨区域墨水量数据CPU-GPU数据映射关系,解决CPU-GPU数据交换问题;利用一对纹理内存组交替读写的模式完成受墨区域墨水量求和,实现GPU并行运算的求和纯并行规约运算问题;采用基于Box-Muller变换的方法生成高斯随机数,避免分支与循环操作干扰随机数生成流的效率;利用混合线性同余数周期扩展算法对生成的伪随机数进行周期扩展,解决传统同余数伪随机数周期受制于余数的问题。由于利用GPU对虚拟纸张受墨区域墨水扩散过程进行并行处理,使得毛笔绘画系统中最耗时、计算量最复杂的模块得以加速,可以提高毛笔墨水扩散模型的实时性。
[0004]本发明解决其技术问题所采用的技术方案是:一种基于GPU的实时毛笔墨水扩散模型并行实现方法,其特点是采用以下步骤:
[0005]步骤一、以纸张受墨区域点的集合作为GPU处理的输入。将虚拟纸张以纹理的方式加载至纹理内存,纹理上的每一个纹素对应虚拟纸张的一个像素。纹理内存的每个纹素具有三个分量,分别对应虚拟纸张点的坐标、当前墨水量、当前连通性,形成虚拟纸张与纹理的映射关系。然后进入第一个顶点处理程序核Vertex program,对虚拟纸张受墨区域进行墨水量求和。
[0006]步骤二、求和处理结束后进入生成受墨区域漫步所需的高斯随机数集合顶点处理程序核。随机数生成运算核采用基于传统均匀分布随机数到高斯随机数的Box-Muller变换方法。Box-Muller变换如下式所示
【权利要求】
1.一种基于GPU的实时毛笔墨水扩散模型并行实现方法,其特征在于包括以下步骤:步骤一、以纸张受墨区域点的集合作为GPU处理的输入;将虚拟纸张以纹理的方式加载至纹理内存,纹理上的每一个纹素对应虚拟纸张的一个像素;纹理内存的每个纹素具有三个分量,分别对应虚拟纸张点的坐标、当前墨水量、当前连通性,形成虚拟纸张与纹理的映射关系;然后进入第一个顶点处理程序核Vertex program,对虚拟纸张受墨区域进行墨水量求和; 步骤二、求和处理结束后进入生成受墨区域漫步所需的高斯随机数集合顶点处理程序核;随机数生成运算核采用基于传统均匀分布随机数到高斯随机数的Box-Muller变换方法;Box-Muller变换如下式所示
【文档编号】G06T1/00GK103473123SQ201310379037
【公开日】2013年12月25日 申请日期:2013年8月27日 优先权日:2013年8月27日
【发明者】白本督, 张艳宁, 李映, 范九伦 申请人:西安邮电大学, 西北工业大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1