一种基于视线方向纹理采样的MatCap算法的制作方法

文档序号:15689914发布日期:2018-10-16 21:52阅读:537来源:国知局

本发明涉及计算机图形处理技术领域,具体的说是一种基于视线方向纹理采样的matcap算法。



背景技术:

matcap(materialcapture)是当前常见的一种计算机图形技术,它使用模型表面法线从世界空间变换到摄像机空间,再把变换后xy分量的值域从[-1,1]映射到[0,1],再将其作为uv的值,对纹理进行采样。这种做法对计算机性能资源消耗很低,并且在非平坦表面上能获得不错的效果。在通常应用中,matcap所用的纹理看起来是一个模拟某种材质的球体,使模型看上去具有相同的质感,著名雕刻软件zbrush便是使用的matcap材质。但会存在以下缺陷:

1、当模型是完全的平面时,因为所有顶点法线方向相同,在纹理上采样的uv坐标也相同,所以会显示为单一颜色;

2、由于作为uv值的表面法线只是统一到摄像机空间中,当模型在摄像机视野的边缘位置时,在视觉上会有纹理产生了偏移的感觉。当摄像机视角越大(焦距越小)时,这种偏移越明显,当摄像机为正交时,则不会有这种偏移。

对于视野不同位置的相同的5个球体而言,如图1所示的u值的变化,黑到白代表从0到1,如图2所示的v值的变化,黑到白代表从0到1,在模仿某种材质时,这并没有什么问题,但当需要精确还原某些纹理,这种缺陷便会体现出来,当我们需要列如均匀轮廓线和中心十字这样(如图3所示)的效果时,如图4所示,只有位于摄像机中央的球体正确的实现了我们的需求。

故针对上述技术中存在的缺点及局限性,本发明提出了一种基于视线方向纹理采样的matcap算法。



技术实现要素:

为了解决上述现有技术中存在的问题,本发明提供一种基于视线方向纹理采样的matcap算法。

本发明解决其技术问题所采用的技术方案是:

一种基于视线方向纹理采样的matcap算法,包括以下步骤:

步骤一、将工作空间内引擎提供的物体表面到摄像机位置视线方向矢量,经过归一化处理后,作为新的变换矩阵的z方向基矢量

步骤二、将矢量(0,1,0)从摄像机空间变换到世界空间得到

步骤三、将步骤一中得到的基矢量进行叉乘,得到步骤一中新的变换矩阵的x方向的基矢量

步骤四、将步骤三中得到的基矢量与步骤一中得到的基矢量进行叉乘,得到步骤一中新的变换矩阵的y方向的基矢量

步骤五、通过步骤一中获得的基矢量步骤三中获得的基矢量和步骤四中获得的基矢量得到新的变换矩阵

步骤六、用工作空间内的世界空间中的顶点法线与步骤五中得到的新的变换矩阵相乘,取xy分量并将值域从[-1,1]映射到[0,1]作为uv值对所需物体表面的纹理进行采样。

本发明的有益效果是:本发明用新的变换矩阵来变换顶点法线的新matcap算法,得出的结果在视野中的任何位置都同样准确,没有产生偏移,实现精确的基于视线方向的纹理采样。

附图说明

下面结合附图和实施例对本发明进一步说明。

图1是本发明背景技术中示例的u值变化示意图;

图2是本发明背景技术中示例的v值变化示意图;

图3是本发明背景技术中示例的对于轮廓线和十字的纹理的示意图;

图4是本发明背景技术中应用于模型的效果示意图;

图5是本发明中一个实施例的u值变化示意图;

图6是本发明中一个实施例的v值变化示意图;

图7是本发明中一个实施例的应用轮廓线与十字纹理的变化示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明所述的一种基于视线方向纹理采样的matcap算法,包括以下步骤:

步骤一、将工作空间内引擎提供的物体表面到摄像机位置视线方向矢量,经过归一化处理后,作为新的变换矩阵的z方向基矢量

步骤二、将矢量(0,1,0)从摄像机空间变换到世界空间得到

步骤三、将步骤一中得到的基矢量进行叉乘,得到步骤一中新的变换矩阵的x方向的基矢量

步骤四、将步骤三中得到的基矢量与步骤一中得到的基矢量进行叉乘,得到步骤一中新的变换矩阵的y方向的基矢量

步骤五、通过步骤一中获得的基矢量步骤三中获得的基矢量和步骤四中获得的基矢量得到新的变换矩阵

步骤六、用工作空间内的世界空间中的顶点法线与步骤五中得到的新的变换矩阵相乘,取xy分量并将值域从[-1,1]映射到[0,1]作为uv值对所需物体表面的纹理进行采样。

作为本发明的一个实施例:

针对在视野不同位置的相同的5个球体,用新的变换矩阵后得出的结果,如图5至图7所示,可以看出用新的变换矩阵来变换顶点法线的新matcap算法,得出的结果在视野中的任何位置都同样准确,没有产生偏移。

以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1