> Unlike normal programming languages, fragment shaders always execute both parts of each branch due to gpu limitations.
GPUs do have real branching and even loops these days, you just can't have divergent branching within a shader group.
I'm not sure how efficient it is to splatter individual pixels like in the mask used in the article since adjacent pixels will likely need to be evaluated anyway if the shader uses derivatives. Too bad that the author didn't bother to include any performance numbers.