438 Commits

Author SHA1 Message Date
Mitchell Hashimoto
6c859cca82 renderer/metal: minimum contrast experiment
This uses WCAG2 algorithms with a minimum ratio hardcoded of 3:1. This
is not shippable in its current state because we want the ratio to be
configurable and I'm not happy with the way data is being sent to the
shader.
2023-12-01 20:51:16 -08:00
Mitchell Hashimoto
bb60d2c1c0 renderer/opengl: urls 2023-11-29 15:30:23 -08:00
Mitchell Hashimoto
8fcf3f08dd core: send mouse hover point 2023-11-29 15:30:22 -08:00
Mitchell Hashimoto
3a599ec7df renderer: link sets handle hover links 2023-11-29 15:30:22 -08:00
Mitchell Hashimoto
b94c607256 renderer: matchset tests 2023-11-29 15:30:22 -08:00
Mitchell Hashimoto
5a7596e1b1 renderer: link set for more efficient matching 2023-11-29 15:30:22 -08:00
Mitchell Hashimoto
aa86031ff6 terminal: move line searching here, unit test 2023-11-29 15:30:22 -08:00
Mitchell Hashimoto
5db002cb12 renderer/metal: underline urls 2023-11-29 15:30:21 -08:00
Mitchell Hashimoto
247b92ce07 renderer/opengl: convert Kitty images from RGB to RGBA
Fixes #932

We have to do this for Metal as well (this code is copied from Metal)
since Metal doesnt even allow RGB textures. I couldn't figure out a way
to get the A value to be "255" (byte), it seems to always be set to 1
which gets normalized to 1/255, so lets just manually convert.
2023-11-21 16:56:02 -08:00
Mitchell Hashimoto
cf8a0bdaec renderer: handle Kitty images where z < 0 for all placements 2023-11-20 21:34:17 -08:00
Mitchell Hashimoto
9988dedb80 renderr/opengl: stylistic 2023-11-20 09:45:38 -08:00
Mitchell Hashimoto
d1de53ed22 renderer/opengl: correct shader params 2023-11-19 22:52:40 -08:00
Mitchell Hashimoto
a5d71723d5 renderer/opengl: do not need to convert 2023-11-19 22:49:30 -08:00
Mitchell Hashimoto
2a10af90a3 renderer/opengl: draw images 2023-11-19 22:43:39 -08:00
Mitchell Hashimoto
64cacce1cf renderer/opengl: setup image uniforms 2023-11-19 22:33:06 -08:00
Mitchell Hashimoto
76c76ce85e renderer/opengl: upload kitty image textures 2023-11-19 22:08:07 -08:00
Mitchell Hashimoto
e55cb274ba config: custom-shader-animation 2023-11-17 21:51:07 -08:00
Mitchell Hashimoto
61f10dc583 renderer/opengl: new gpucell 2023-11-17 21:51:07 -08:00
Mitchell Hashimoto
8253fc1f31 renderer/opengl: shaders only need one color input 2023-11-17 21:51:07 -08:00
Mitchell Hashimoto
2db36646ac renderer/opengl: some comments 2023-11-17 21:51:07 -08:00
Mitchell Hashimoto
a64d12d3cb renderer: animations should stop if config changes them 2023-11-17 21:51:07 -08:00
Mitchell Hashimoto
5d7c47a469 renderer/metal: clean up some memory management 2023-11-17 21:51:06 -08:00
Mitchell Hashimoto
cc389c81c2 quiet tests 2023-11-17 21:51:06 -08:00
Mitchell Hashimoto
39e7055853 renderer/opengl: enable animations 2023-11-17 21:51:06 -08:00
Mitchell Hashimoto
5c7bad2f7d renderer/opengl: resize the screen texture 2023-11-17 21:51:06 -08:00
Mitchell Hashimoto
c8a51a2158 renderer/opengl: create the screen texture 2023-11-17 21:51:06 -08:00
Mitchell Hashimoto
fbc13d08b0 renderer/opengl: set resolution uniform on screen size change 2023-11-17 21:51:06 -08:00
Mitchell Hashimoto
2559d6b367 renderer/opengl: increment time uniform 2023-11-17 21:51:06 -08:00
Mitchell Hashimoto
e0afa442c4 renderer/opengl: better organization of custom shader state 2023-11-17 21:51:06 -08:00
Mitchell Hashimoto
47971e7663 renderer/opengl: setup uniform buffer objects for custom shaders 2023-11-17 21:51:06 -08:00
Mitchell Hashimoto
5fc91401f2 renderer/opengl: draw custom shaders, simplified 2023-11-17 21:51:06 -08:00
Mitchell Hashimoto
da600fee8f renderer/opengl: pull out cell program drawing to dedicated func 2023-11-17 21:51:06 -08:00
Mitchell Hashimoto
aff5090362 renderer/opengl: simplifying the custom shader to get things working 2023-11-17 21:51:06 -08:00
Mitchell Hashimoto
1fedc912f0 renderer/opengl: create ubos 2023-11-17 21:51:05 -08:00
Mitchell Hashimoto
3502db0f5f renderer/opengl: start custom program work 2023-11-17 21:51:05 -08:00
Mitchell Hashimoto
cc630f10ac renderer/opengl: only one GPUCell 2023-11-17 21:51:05 -08:00
Mitchell Hashimoto
fb0929a11b renderer/opengl: extract cell program state to dedicated struct 2023-11-17 21:51:05 -08:00
Mitchell Hashimoto
46dd084ee9 renderer/opengl: wip 2023-11-17 21:51:05 -08:00
Mitchell Hashimoto
8576acb89e renderer/opengl: move opengl API to pkg/opengl 2023-11-17 21:51:04 -08:00
Mitchell Hashimoto
76a88e3fbe renderer: spirv binary must be aligned to u32 2023-11-17 21:50:53 -08:00
Mitchell Hashimoto
4742cd308d renderer: animation timer if we have custom shaders 2023-11-17 21:50:53 -08:00
Mitchell Hashimoto
17de73f802 renderer: log shadertoy compile errors 2023-11-17 21:50:53 -08:00
Mitchell Hashimoto
3a17ac48cf prettier: ignore shaders 2023-11-17 21:50:53 -08:00
Mitchell Hashimoto
244e7266a1 renderer/metal: don't recreate custom shader resources per frame 2023-11-17 21:50:53 -08:00
Mitchell Hashimoto
d3bc1ab6da renderer/metal: reuse an intermediate texture for custom shaders 2023-11-17 21:50:53 -08:00
Mitchell Hashimoto
bc70d19257 renderer/metal: set valid sampler properties 2023-11-17 21:50:53 -08:00
Mitchell Hashimoto
01a73994cb renderer/metal: setup sampler state 2023-11-17 21:50:53 -08:00
Mitchell Hashimoto
1e572fb10b renderer/metal: load custom shaders 2023-11-17 21:50:52 -08:00
Mitchell Hashimoto
9fbee7e6d1 renderer: turn assertion into error 2023-11-17 21:50:35 -08:00
Mitchell Hashimoto
dba78b20ca renderer: shadertoy convert to MSL 2023-11-17 21:50:35 -08:00