请问Gouraud Shading (高洛德着色):是怎样计算的

butwang 2010-03-24 01:10:53
比如已知三角形三个顶点的颜色,如何求出三角形内任意一点的颜色
...全文
575 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
butwang 2010-03-24
  • 打赏
  • 举报
回复
谢谢了,
gamedragon 2010-03-24
  • 打赏
  • 举报
回复
图形学上都有讲这些东西的,唉!
gamedragon 2010-03-24
  • 打赏
  • 举报
回复 1
过这一点,做一条平行于底边的平行线,跟两边交于两点。这两点可以插值算出,再插值算出这个点的值。

不过一般不这么做了。
一般做法是,见下面链接
http://topic.csdn.net/u/20070502/11/55c9dbd0-f26f-4d98-a113-1c172441ace6.html
butwang 2010-03-24
  • 打赏
  • 举报
回复
只知道三个点啊,怎样构造4个点的双线性插值呢。
gamedragon 2010-03-24
  • 打赏
  • 举报
回复
LS还少了个顶点,应该双线性插值。
张赐 2010-03-24
  • 打赏
  • 举报
回复
举个简单的例子,比如

p1----p----p2

p1和p2是三角形的2个顶点,
坐标为p1(1.0,0.0), p2(2.0,0.0)
颜色c1(1.0,1.0,0.0),c2(0.0,1.0,0.0),
现在要求点p(1.5,0.0)的颜色c

通过差值计算

c = c1* |p2-p|/|p2-p1|+c2*|p1-p|/|p2-p1|

=(1.0,1.0,0.0)*0.5/1 + (0.0,1.0,0.0)* 0.5/1
=(0.5,0.5,0.0)+(0.0,0.5,0.0)
=(0.5,1.0,0.0)

gamedragon 2010-03-24
  • 打赏
  • 举报
回复
高洛德不就是普通插值嘛。
张赐 2010-03-24
  • 打赏
  • 举报
回复
已知三角形的顶点在屏幕上的坐标和对应的顶点的颜色,
那么在计算的时候,根据每个像素在三角形内部的位置,对颜色进行差值。

8,325

社区成员

发帖
与我相关
我的任务
社区描述
游戏开发相关内容讨论专区
社区管理员
  • 游戏开发
  • 呆呆敲代码的小Y
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧