Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use the texture filtering hardware to reduce the number of sample operations in the blur shader. #3122

Merged
merged 1 commit into from Dec 6, 2018

Commits on Dec 6, 2018

  1. Use the texture filtering hardware to reduce the number of sample ope…

    …rations in
    
    the blur shader.
    
    Linear filtering allows us to evaluate the formula
    
        k₀c₀ + k₁c₁                 (Formula 1)
    
    where c₀ and c₁ are the colors of adjacent texels and k₀ and k₁ are arbitrary
    factors (in this case, the results of evaluating the Gaussian function) with a
    single lookup. Linear filtering evaluates the following expression for some t
    between 0 and 1:
    
        lerp(c₀, c₁, t)
    
    It can be shown algebraically that Formula 1 is equivalent to:
    
                     ⎛           k₁  ⎞
        (k₀ + k₁)lerp⎜c₀, c₁, ───────⎟
                     ⎝        k₀ + k₁⎠
    
    Which can be readily evaluated by letting `t = k₁/(k₀ + k₁)` and performing a
    texture lookup.
    pcwalton committed Dec 6, 2018
You can’t perform that action at this time.