v0.2.0 Additions: - Add a public "renderer" API. This is currently very WIP, and not ready for stable usage yet. Both the API and the implementation are in flux, but the general goal is to make it easier to use libplcaebo to just render some data in the optimal way. - Add pl_deband_default_params - Expand shader system to support shader merging. This is not directly publicly useful yet, but it's used internally in the renderer. - Allow dispatching to sub-rects of the render target - Expand the scaling API to allow disabling antialiasing - Add high quality dithering algorithms (blue noise, arbitrary size bayer matrix). This uses a new, genearlized shader LUT mechanism which allows the LUT to manifest itself either as a texture, a uniform float or as an in-line constant array depending on environment/hardware capabilities. As such, this can be used to enable dithering even without the use of a RA. Changes: - Minor RA API changes here and there (e.g. signed -> unsigned stride) Fixes: - Improved check logic for various shaders - More descriptive variable names in some of the generated shaders - Fix overflow when dithering to bit depths greater than 32 - Fix the RA format finding logic in some cases - Make the scalers correctly support flipped scaling rects - Fix some incorrect vulkan texture barriers - Fix some locale issues on BSD - GLSL 120 compat fix with the dithering algorithm - Fix vulkan command polling logic to avoid blocking for longer than intended
This tag has no release notes.