vello/piet-gpu/shader/gen
Raph Levien 307bf8d227 More blend mode fixes
Adds a test to visualize the blend modes. Fixes a dumb bug in blend.h and also a more subtle issue where default blending is not the same as clipping, as the former needs to always push a blend group (to cause isolation) and the latter does not. This might be something we need to get back to.

This should fix the rendering, so it fairly closely resembles the Mozilla reference image. There's also a compile-time switch to disable sRGB conversion, which is (sadly) needed for compatible rendering.
2022-05-17 16:12:05 -07:00
..
backdrop.dxil Fix blending math 2022-05-13 10:18:29 -07:00
backdrop.hlsl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
backdrop.msl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
backdrop.spv Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
backdrop_lg.dxil Fix blending math 2022-05-13 10:18:29 -07:00
backdrop_lg.hlsl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
backdrop_lg.msl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
backdrop_lg.spv Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
bbox_clear.dxil Fix blending math 2022-05-13 10:18:29 -07:00
bbox_clear.hlsl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
bbox_clear.msl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
bbox_clear.spv Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
binning.dxil Fix blending math 2022-05-13 10:18:29 -07:00
binning.hlsl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
binning.msl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
binning.spv Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
clip_leaf.dxil Fix blending math 2022-05-13 10:18:29 -07:00
clip_leaf.hlsl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
clip_leaf.msl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
clip_leaf.spv Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
clip_reduce.dxil Fix blending math 2022-05-13 10:18:29 -07:00
clip_reduce.hlsl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
clip_reduce.msl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
clip_reduce.spv Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
coarse.dxil More blend mode fixes 2022-05-17 16:12:05 -07:00
coarse.hlsl More blend mode fixes 2022-05-17 16:12:05 -07:00
coarse.msl More blend mode fixes 2022-05-17 16:12:05 -07:00
coarse.spv More blend mode fixes 2022-05-17 16:12:05 -07:00
draw_leaf.dxil Fix blending math 2022-05-13 10:18:29 -07:00
draw_leaf.hlsl Radial gradients 2022-03-30 20:32:13 -07:00
draw_leaf.msl Radial gradients 2022-03-30 20:32:13 -07:00
draw_leaf.spv Radial gradients 2022-03-30 20:32:13 -07:00
draw_reduce.dxil Fix blending math 2022-05-13 10:18:29 -07:00
draw_reduce.hlsl Radial gradients 2022-03-30 20:32:13 -07:00
draw_reduce.msl Radial gradients 2022-03-30 20:32:13 -07:00
draw_reduce.spv Radial gradients 2022-03-30 20:32:13 -07:00
draw_root.dxil Fix blending math 2022-05-13 10:18:29 -07:00
draw_root.hlsl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
draw_root.msl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
draw_root.spv Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
kernel4.dxil More blend mode fixes 2022-05-17 16:12:05 -07:00
kernel4.hlsl More blend mode fixes 2022-05-17 16:12:05 -07:00
kernel4.msl More blend mode fixes 2022-05-17 16:12:05 -07:00
kernel4.spv More blend mode fixes 2022-05-17 16:12:05 -07:00
kernel4_gray.dxil More blend mode fixes 2022-05-17 16:12:05 -07:00
kernel4_gray.hlsl More blend mode fixes 2022-05-17 16:12:05 -07:00
kernel4_gray.msl More blend mode fixes 2022-05-17 16:12:05 -07:00
kernel4_gray.spv More blend mode fixes 2022-05-17 16:12:05 -07:00
path_coarse.dxil Fix blending math 2022-05-13 10:18:29 -07:00
path_coarse.hlsl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
path_coarse.msl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
path_coarse.spv Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
pathseg.dxil Fix blending math 2022-05-13 10:18:29 -07:00
pathseg.hlsl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
pathseg.msl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
pathseg.spv Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
pathtag_reduce.dxil Fix blending math 2022-05-13 10:18:29 -07:00
pathtag_reduce.hlsl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
pathtag_reduce.msl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
pathtag_reduce.spv Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
pathtag_root.dxil Fix blending math 2022-05-13 10:18:29 -07:00
pathtag_root.hlsl Adjust workgroup sizes 2021-12-08 11:48:38 -08:00
pathtag_root.msl Adjust workgroup sizes 2021-12-08 11:48:38 -08:00
pathtag_root.spv Adjust workgroup sizes 2021-12-08 11:48:38 -08:00
tile_alloc.dxil Fix blending math 2022-05-13 10:18:29 -07:00
tile_alloc.hlsl Fix missing blend/clip logic 2022-03-16 14:40:58 -07:00
tile_alloc.msl Fix missing blend/clip logic 2022-03-16 14:40:58 -07:00
tile_alloc.spv Fix missing blend/clip logic 2022-03-16 14:40:58 -07:00
transform_leaf.dxil Fix blending math 2022-05-13 10:18:29 -07:00
transform_leaf.hlsl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
transform_leaf.msl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
transform_leaf.spv Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
transform_reduce.dxil Fix blending math 2022-05-13 10:18:29 -07:00
transform_reduce.hlsl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
transform_reduce.msl Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
transform_reduce.spv Variable size encoding of draw objects 2022-03-14 16:32:08 -07:00
transform_root.dxil Fix blending math 2022-05-13 10:18:29 -07:00
transform_root.hlsl Adjust workgroup sizes 2021-12-08 11:48:38 -08:00
transform_root.msl Adjust workgroup sizes 2021-12-08 11:48:38 -08:00
transform_root.spv Adjust workgroup sizes 2021-12-08 11:48:38 -08:00