如何做古劳德着色



有人可以向我解释Gouraud阴影吗?我可以继续谷歌"gouraud shadeding",但这对我来说没有多大意义。我有 3 个顶点,有一个 (x, y) 位置和一个 int[r,g,b] 颜色。我想线性插值(不确定这意味着什么)顶点的颜色以在三角形中着色。这样做的逻辑是什么?

您将执行线性插值。

沿着像素行从上到下扫描三角形。每行将沿着两条不同的边与三角形相交两次。

您将首先沿这些边执行两个线性插值,计算顶点处 RGB 分量的混合,并根据到这些分量的距离进行加权(颜色a的权重Db/(Da+Db)和颜色b的权重Da/(Da+Db))。

然后,您将扫描交叉点之间的像素,在刚刚计算的两种颜色之间执行另一个线性插值。

这样,您将用平滑的渐变填充三角形,使其与相邻三角形(如果有的话)连续。

相关内容

  • 没有找到相关文章

最新更新