Some proper math is much easier guys :) Here you go, this works: That's a pixel shader, make sure to feed in a proper worldposition ( = mul(In.position, WorldMatrix) ) scale determines the spacing of grid points, dotsize is the size of dots. That last one is really dependant on distance, as I expected it becomes a jittery…