Fix an issue on some nvidia cards with texelFetch.
In the do_clip() function, texelFetch is sometimes returning invalid results on some nVidia GPUs. To work around that, use UVs as normalized float coordinates and fetch via texture(). This fixes the problems on nVidia cards. This exposed a bug in how we handle vertex snapping with clips. Previously, we just cast the float UVs to an int before passing to texelFetch. Now, pass in the snap offset and apply that to the UVs for the clip mask.