3792 Commits

Author SHA1 Message Date
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
Mitchell Hashimoto
4afaea19d6 pkg/glslang: shader api 2023-11-17 21:50:35 -08:00
Mitchell Hashimoto
6ebbea84d5 pkg/glslang: can build 2023-11-17 21:50:35 -08:00
Mitchell Hashimoto
c347148fd7 renderer/metal: CRT effect, ugly hacky code 2023-11-17 21:50:34 -08:00
Mitchell Hashimoto
28246a80b8 renderer/metal: release some of our shader initialization objects 2023-11-17 21:50:34 -08:00
Mitchell Hashimoto
3095dce685 renderer/metal: wip for loading custom shader pipelines 2023-11-17 21:50:34 -08:00