I should mention that a material function version while possible will be very slow since it will have to trace every single pixel. This is extra painful since you’d be raytracing against a blurry distance field which means the vast majority of the work is ‘wasted’ ie it would look just as good computed at 1/2 or 1/4 res and upscaled. There is no way to do that kind of down-resed processing using materials without code at the moment.