3802 Commits

Author SHA1 Message Date
Mitchell Hashimoto
2a002bad5e Merge pull request #908 from gpanders/surface-close
macos: ensure all surfaces are closed when a window is closed
2023-11-18 08:32:13 -08:00
Gregory Anders
be7be538af macos: ensure all surfaces are closed when a window is closed 2023-11-18 08:40:40 -06:00
Mitchell Hashimoto
080789957a Merge pull request #903 from mitchellh/macos-update
Custom Shaders (Metal and OpenGL)
2023-11-17 22:06:38 -08:00
Mitchell Hashimoto
eaf847381a config: clarify runtime reloading of shader stuff 2023-11-17 22:00:33 -08:00
Mitchell Hashimoto
f2513e0825 Merge pull request #876 from gpanders/notifications
Add support for desktop notifications
2023-11-17 21:57:09 -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
db244da101 config: note custom-shader requires opengl 4.2 on linux 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
3aa217ad2e pkg/opengl: add Framebuffer APIs 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
2520bb3d07 config: introduce RepeatablePath to automatically expand 2023-11-17 21:50:36 -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
Mitchell Hashimoto
1bd92619b1 renderer: shadertoy functions 2023-11-17 21:50:35 -08:00
Mitchell Hashimoto
3a4aef2dcd pkg/spirv-cross: correct c header 2023-11-17 21:50:35 -08:00
Mitchell Hashimoto
291ca16c20 build: add spirv-cross 2023-11-17 21:50:35 -08:00
Mitchell Hashimoto
7821e6aa3a pkg/spirv-cross 2023-11-17 21:50:35 -08:00
Mitchell Hashimoto
6634ccc09c pkg/spirv-cross 2023-11-17 21:50:35 -08:00
Mitchell Hashimoto
1678c3a038 build: add glslang 2023-11-17 21:50:35 -08:00
Mitchell Hashimoto
9715eef388 pkg/glslang: build SPIRV lib 2023-11-17 21:50:35 -08:00
Mitchell Hashimoto
54ee8c1e3d pkg/glslang: complete the API 2023-11-17 21:50:35 -08:00