流逝的时光

2007年9月1日星期六

完成了ReflectiveBumpMapping


写pixel shader时要把normal map里的normal(in tangent space)转换到模型坐标系里才能look up cubemap哦。这需要计算TBN矩阵的逆矩阵。绘制茶壶时顶点太多,速度慢得很。原因在调查中。
速度慢的原因查明了哎。我的显卡驱动没更新到最新版本,导致GLSL transpose函数不能使用,自己写了个:
mat3 transpose(mat3 m)
{
mat3 m2;
int i,j;
for( i =0; i<3;i++)
{
for( j = 0;j<3;j++)
{
m2[i][j] = m[j][i]; }
}
return m2;
}
这个函数看上去没什么,简简单单的9次循环嘛。但我猜想是矩阵下标操作比较慢的原因。我更新到最新的显卡驱动,去掉自己写的函数,代以GLSL内置函数,速度就正常啦!
Posted by Picasa

没有评论: