码迷,mamicode.com
首页 > 其他好文 > 详细

透视纹理引发的对于插值的思考

时间:2015-01-19 23:29:58      阅读:181      评论:0      收藏:0      [点我收藏+]

标签:

  插值还没有系统的学过,最近在实现BlackWalnut3D的纹理映射时,才慢慢发现3D中的插值和我们数学上的插值还是有点不同的。

  个人认为,插值可以和向量,矩阵一起称为计算机图形学中最最基本的数学基础。

  在构造物体时,可以只设置几个参考点,使用插值完成贝塞尔曲线的逼近。在进行裁剪时,为了获得规范的,可以方便进行裁剪的裁剪立方体CVV,将透视和插值融合实现了透视矩阵,同时,在具体的裁剪过程中,使用插值获得各种裁剪后的坐标。在光栅化的阶段,使用插值完成将一个平面离散到屏幕像素上,并且利用插值完成正确的纹理透视,使效果看起来更棒。

  可以发现,在pipeline的整个阶段都可能用到插值。其重要性并不亚于向量和矩阵。那么,就先简单的介绍一下插值,以后系统的学习过后,再系统的写一写。

      首先,插值只适用于线性关系中。对于非线性关系,插值并不适用。

  其次,计算机中的插值,和数学中插值的基本含义一样,具体用法上,多数使用的是比例关系。

      数学上,线性关系表示为:y = ax+b,其中a,b为实数,x,y可以为向量或者实数。也就是说,知道a,b后,每一个确定的x,有一个确定的y和其对应。

  而再计算机中,我们通常使用的是其比例关系。设y = ax+b , 如y从y0开始,到y0和y3之间的一个值y2,那么x也就从x0开始,到x0和x3之间的一个值x2,这中情况下,如果要求x2的值,有

x2 = (x3-x0)*(y2-y0)/(y3 - y0) + x0 。不用具体求出a和b的值。

  在下面这篇文章中,使用的就是上面的插值方式:

      http://blog.csdn.net/popy007/article/details/5570803

      由上面这篇文章可知,只要能知道两个量之间关系是线性关系即可,不用计算a和b的具体值。  

透视纹理引发的对于插值的思考

标签:

原文地址:http://www.cnblogs.com/BlackWalnut/p/4234968.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!