0001: ; c0-3 -- world + ビュー + 透視変換行列 0002: ; c4-7 -- world 0003: ; c12 -- {0.0, 0.5, 1.0, 2.0} 0004: ; 0005: ; v0 頂点の座標値 0006: ; v3 法線ベクトル (w成分は1.0f) 0007: 0008: vs.1.0 0009: 0010: ;座標変換 0011: m4x4 oPos, v0, c0 0012: 0013: ; Lambert 拡散 0014: dp4 r0, v3, c13 0015: max r0, r0, c13.w 0016: mul oD0, r0, c14 0017: 0018: ; 視線ベクトル 0019: m4x4 r0, v0, c4 0020: add r0, c15, -r0 0021: dp3 r0.w, r0, r0 ; 正規化 0022: rsq r0.w, r0.w 0023: mul r0, r0, r0.w 0024: 0025: ; Half ベクトル 0026: add oT1, r0, c11 0027: 0028: ; ワールド座標での法線ベクトル 0029: m3x3 oT0, v3, c4 0030: