Skip to content
  • Niklas Haas's avatar
    shaders: refactor pl_shader_obj and add sh_lut · 456aa914
    Niklas Haas authored
    This refactors the way we store data like scaler LUTs, with the intent
    of generalizing it for other types of LUTs (e.g. dither matrix) in an
    easy-to-use but flexible way.
    
    Instead of trying to come up with sane semantics for who gets to use
    what fields inside a pl_shader_obj, we just abstract it away and let the
    caller deal with the *priv representation (as usual). Unfortunately,
    this requires "nesting" pl_shader_objs for cases like the sampler LUTs
    where we need to store information about the scaling kernel *and* the
    underlying LUT. But that's not too bad, I think.
    
    I had to rewrite the code that uses pl_shader_objs. Hopefully for the
    better.
    456aa914