Skip to content

shaders/sampling: optimize/improve polar anti-ringing

Niklas Haas requested to merge haasn/libplacebo:ar_mainlobe into master

Instead of having to calculate a completely separate (gaussian) weight function, a much better approach is to just use the main lobe of the main kernel, a parameter we compute at runtime for optimum effect.

This significantly reduces computation time by not needing to bother computing extra gaussian weight, and also actually makes the antiringing kernel smaller for typical (jinc-based) functions.

Very slightly sharper overall than the previous approach, and produces almost similarly few artifacts, though it still looks considerably more blurry than a sharper (e.g. box) cutoff would. More work needed.

Merge request reports