不知道為什麼,
maya nurbs的ub順序就是跟renderman的ST方向不一致,
如果UV沒有rotate,
那麼直接將ST的angle設-90度或者用mayaUV這個node,
不過如果uv有rotate就很煩人了。
以下是不負責任的maya uv轉換ST程式,
沒有仔細檢驗過,所以可能會有一些沒有mod或...的部分,
不過方向應該是正確的。
產生一個manifold類別的SLBOX,
然後定義一個float rotateAngle,
這個值跟texture2D的rotateUV填入相同的值,
這樣就OK了
float ss = s-0.5;
float tt = t-0.5;
float oAngle = atan(tt,ss);
float rad = sqrt(ss*ss+tt*tt);
float newAngle = oAngle - PI/2 - radians(rotateAngle);
result_Q = (rad*cos(newAngle)+0.5,0.5+rad*sin(newAngle),0);
No comments:
Post a Comment