www.pudn.com > DemoFluid2D.zip > smVoriticity2D.psh
!!FP1.0
#Tex0----Delta Velocity
#Tex0.x---u
#Tex0.y---v
DECLARE TexPARA = {0,0,0,0};
#nx
ADD R0, f[WPOS], {1,0,-1,0};
TEX R1, R0.xyww, TEX0, RECT;
TEX R2, R0.zwww, TEX0, RECT;
SUB R3.y, |R1.y|, |R2.y|;
#ny
ADD R0, f[WPOS], {0,1,0,-1};
TEX R1, R0.xyww, TEX0, RECT;
TEX R2, R0.zwww, TEX0, RECT;
SUB R3.x, -|R1.x|, -|R2.x|;
MUL R3, R3, TexPARA;
#1.0/sqrt(nx*nx+ny*ny)
DP3 R0, R3, R3;
RSQ R0, R0.x;
MUL R0, R0, R3;
#Omiga[j][i]
TEX R2, f[WPOS], TEX0, RECT;
MUL R0, R0, R2;
#Force[j][i]
TEX R1, f[WPOS], TEX1, RECT;
MAD o[COLR], R0, TexPARA.zwzw, R1;
END