mirror-ghostty/pkg/macos
Qwerasd fca336c32d Metal: blend in Display P3 color space, add option for linear blending
This commit is quite large because it's fairly interconnected and can't
be split up in a logical way. The main part of this commit is that alpha
blending is now always done in the Display P3 color space, and depending
on the configured `window-colorspace` colors will be converted from sRGB
or assumed to already be Display P3 colors. In addition, a config option
`text-blending` has been added which allows the user to configure linear
blending (AKA "gamma correction"). Linear alpha blending also applies to
images and makes custom shaders receive linear colors rather than sRGB.

In addition, an experimental option has been added which corrects linear
blending's tendency to make dark text look too thin and bright text look
too thick. Essentially it's a correction curve on the alpha channel that
depends on the luminance of the glyph being drawn.
2025-01-13 13:50:29 -08:00
..
animation pkg/macos: animation yeet usingns 2024-08-16 16:35:07 -07:00
carbon pkg/macos: expose carbon API 2024-09-19 09:22:07 -07:00
dispatch pkg/macos: graphics usingns yeet 2024-08-16 16:38:04 -07:00
foundation pkg/macos: copyAttribute should return optional 2024-08-24 20:35:41 -07:00
graphics Metal: blend in Display P3 color space, add option for linear blending 2025-01-13 13:50:29 -08:00
os pkg/macos: more 2024-08-16 16:39:33 -07:00
text font(coretext): tolerate fonts without OS/2 tables 2024-12-16 14:52:07 -05:00
video pkg/macos: more 2024-08-16 16:39:33 -07:00
animation.zig pkg/macos: animation yeet usingns 2024-08-16 16:35:07 -07:00
build.zig begin 0.13 update process -- very broken 2024-06-24 15:16:22 -07:00
build.zig.zon pkg/macos: add more text APIs 2024-05-08 09:49:16 -07:00
carbon.zig pkg/macos: expose carbon API 2024-09-19 09:22:07 -07:00
dispatch.zig pkg/macos: graphics usingns yeet 2024-08-16 16:38:04 -07:00
foundation.zig pkg/macos: foundation yeet usingns 2024-08-16 16:33:47 -07:00
graphics.zig pkg/macos: graphics usingns yeet 2024-08-16 16:38:04 -07:00
main.zig pkg/macos: expose carbon API 2024-09-19 09:22:07 -07:00
os.zig pkg/macos: more 2024-08-16 16:39:33 -07:00
text.zig font(coretext): add metrics test case for CT, fix variable font init 2024-12-11 21:14:21 -05:00
video.zig pkg/macos: more 2024-08-16 16:39:33 -07:00