>>654 何を敵視してるの?
DP3 R0, c[11].xyzx, c[11].xyzx;
RSQ R0, R0.x;
MUL R0, R0.x, c[11].xyzx;
MOV R1, c[3];
MUL R1, R1.x, c[0].xyzx;
DP3 R2, R1.xyzx, R1.xyzx;
RSQ R2, R2.x;
MUL R1, R2.x, R1.xyzx;
ADD R2, R0.xyzx, R1.xyzx;
DP3 R3, R2.xyzx, R2.xyzx;
RSQ R3, R3.x;
MUL R2, R3.x, R2.xyzx;
DP3 R2, R1.xyzx, R2.xyzx;
MAX R2, c[3].z, R2.x;
MOV R2.z, c[3].y;
MOV R2.w, c[3].y;
LIT R2, R2;
Cgでは上記コードがたったの2行になる↓。
COLOR cSpec = pow(max(0, dot(Nf, H)), phongExp).xxx;
COLOR cPlastic = Cd * (cAmbi + cDiff) + Cs * cSpec;
Cgの簡単な説明(日本語)とCgのFAQ(英語)
http://jp.nvidia.com/view.asp?IO=Cg_JP Cg公式サイトによるDX9との関係等についての記述
http://www.cgshaders.org/articles/interview_nvidia-jul2002.php 俺は9700買うけどCgには期待してる。
上のFAQ等見ればわかる通りCgはソフト開発のスピードと
GPUパフォーマンスの向上に貢献するものであってATiを
不利にさせるものじゃない。Cgを利用しないメジャーな
ゲーム製作会社はこれからは必然的に遅れをとるわけだし、
それを利用するソフト製作会社が多くなってもAPIに
含まないならば逆に疑問視される。
ATiが自社カード用のCgコンパイラを用意さえすれば
今後さらにカードのパフォーマンスを上げることもできる。
そういった最適化はNVIDIAからの提案でもある。