SeanOMik
fef709d5f1
render: implement PCF for point lights, support per-light shadow settings
2024-07-21 12:02:35 -04:00
SeanOMik
c91ee67961
render: improve shadow settings to make it possible to switch between PCF, PCSS, hardware 2x2 PCF, or disable filtering all together
2024-07-19 17:56:27 -04:00
SeanOMik
c961568b96
render: update the shadow filting poisson disc when shadow settings are modified
2024-07-19 16:07:40 -04:00
SeanOMik
4449172c2b
render: implement PCSS for directional lights
2024-07-18 23:43:08 -04:00
SeanOMik
4c6c6c4dd5
render: PCF with poisson disc on directional lights
2024-07-14 22:14:08 -04:00
SeanOMik
27bc88c5a7
render: pass shadow settings to gpu
2024-07-14 19:46:15 -04:00
SeanOMik
ff06bd55f3
render: simple PCF
2024-07-14 19:06:38 -04:00
SeanOMik
d02258224a
render: fix bug with texture atlas not packing textures in last column
2024-07-14 12:24:13 -04:00
SeanOMik
b45c2f4fab
render: point light shadows in texture atlas, fix bug with unaligned GpuSlotBuffer
2024-07-13 00:56:09 -04:00
SeanOMik
40fa9c09da
render: fix shadow map atlas packing by writing my own skyline packer
2024-07-12 14:58:18 -04:00
SeanOMik
87aa440691
render: create a GpuSlotBuffer for stable indices in a gpu buffer
2024-07-11 20:00:46 -04:00
SeanOMik
cc1c482c40
render: provide shadow texture atlas frame for each shadow casting light
2024-07-11 18:27:26 -04:00
SeanOMik
a4ce4cb432
render: implement packed texture atlas for shadow maps
2024-07-10 20:16:21 -04:00
SeanOMik
e2b554b4ef
render: implement simple texture atlas for the shadow maps
2024-07-05 17:29:38 -04:00
SeanOMik
6d57b40629
render: cull back faces, code cleanup to fix warnings
2024-07-04 23:28:21 -04:00
SeanOMik
fd65f754cf
render: get simple directional shadow maps working
2024-07-04 13:43:36 -04:00
SeanOMik
6c6893149a
render: bind direction light projection matrix to meshes shader
2024-06-30 21:58:08 -04:00
SeanOMik
1c649b2eb6
render: bind the shadow map atlas to the meshes shaders
2024-06-30 21:42:08 -04:00
SeanOMik
7b2d2424a3
render: start moving to a shadow map atlas texture and expose the resources as slots
2024-06-30 20:56:41 -04:00
SeanOMik
e8974bbd44
render: create a depth map for the directional light
2024-06-30 19:33:51 -04:00
SeanOMik
3a80c069c9
render: move most of the mesh processing to a MeshPrepare node
...
Moving that out of the MeshesPass makes the rendering meshes accessible to other passes/nodes. The shadow pass will need access to them which is why this was done now
2024-06-29 22:23:49 -04:00
SeanOMik
c4aebdb25d
render: implement fxaa ( #8 )
CI / build (push) Successful in 3m33s
Details
2024-06-28 15:26:14 -04:00
SeanOMik
2eeca335e2
game: run clippy
2024-06-28 13:25:48 -04:00
SeanOMik
96dea5b1f9
render: code cleanup
2024-06-28 13:16:47 -04:00
SeanOMik
007b1047ef
render: implement view target chains for post processing steps
2024-06-27 23:48:24 -04:00
SeanOMik
545da71cda
render: create ViewTarget to make it easier to render to a non-surface texture and chain together postprocess steps
2024-06-26 21:33:39 -04:00
SeanOMik
0e71c5734f
render: make it easier to get Frame from RenderTarget
2024-06-26 17:14:31 -04:00
SeanOMik
6c1bff5768
render: get sub render graphs working and create a simple test of them
2024-06-25 21:32:29 -04:00
SeanOMik
5f1a61ef52
render: create RenderTarget and Frame, making it easier to render to a non-surface texture
2024-06-23 20:25:57 -04:00
SeanOMik
f755a4c53b
render: create a node for sub render graphs, create a graph init node
2024-06-22 17:00:32 -04:00
SeanOMik
9d3de88c50
render: cleanup
2024-06-21 22:10:35 -04:00
SeanOMik
f440f306be
render: impl Node for RenderGraph in prep for sub-graphs
2024-06-21 22:06:58 -04:00
SeanOMik
f17bf40c77
render: rename RenderGraph::add_pass to add_node
2024-06-21 21:58:40 -04:00
SeanOMik
5fc1a0f134
Add todo panic in code when window is resized
2024-06-16 20:05:04 -04:00
SeanOMik
33358662e2
fix docstest errors in render graph
2024-06-16 00:15:54 -04:00
SeanOMik
0edba69b02
fix warnings, remove some commented code from base shader
ci/woodpecker/push/debug Pipeline failed
Details
2024-06-16 00:11:21 -04:00
SeanOMik
6182a4b9c8
render: simplify light buffer updating
2024-06-15 23:52:46 -04:00
SeanOMik
7576979797
render: fix lighting with more than one light
2024-06-15 23:52:10 -04:00
SeanOMik
d5348ec172
render: a tiny bit of code cleanup
ci/woodpecker/pr/debug Pipeline failed
Details
ci/woodpecker/pr/release Pipeline failed
Details
2024-06-12 21:30:09 -04:00
SeanOMik
9ce79e6b29
resource: fix tests, render: remove warning
ci/woodpecker/pr/debug Pipeline failed
Details
ci/woodpecker/pr/release Pipeline failed
Details
2024-06-12 21:23:27 -04:00
SeanOMik
6d7932f6a5
render: remove IDs for everything, use only labels to identify things
ci/woodpecker/pr/debug Pipeline failed
Details
ci/woodpecker/pr/release Pipeline failed
Details
2024-06-11 20:59:55 -04:00
SeanOMik
28b9604189
render: rename RenderGraphPass to Node to better represent what it actually is in the RenderGraph
...
A node wont always render or compute, so it wouldn't actually be a pass. Calling it a node is a better representation of what it actually is
2024-06-06 19:37:25 -04:00
SeanOMik
a0a2acfec0
render: add todo in code
2024-06-03 19:06:07 -04:00
SeanOMik
ef68b2a4c5
render: create a RenderGraphLabel trait for graph labels instead of strings
ci/woodpecker/pr/debug Pipeline failed
Details
ci/woodpecker/pr/release Pipeline failed
Details
2024-06-02 21:35:59 -04:00
SeanOMik
41d77c5687
render: a tiny bit of code cleanup in mesh pass
2024-06-01 23:05:43 -04:00
SeanOMik
bb21805278
render: add a debug_assert to ensure the developer doesn't reuse ids for slots
2024-06-01 22:55:50 -04:00
SeanOMik
c846d52b0d
render: finally get meshes and entities rendering again with the render graph!
ci/woodpecker/pr/debug Pipeline failed
Details
ci/woodpecker/pr/release Pipeline failed
Details
2024-05-31 20:11:35 -04:00
SeanOMik
7f5a1cd953
render: a bit of code cleanup
2024-05-25 19:37:43 -04:00
SeanOMik
9a48075f07
render: change to manual creation of render graph exeuction path, rewrite light cull compute pass into the render graph
2024-05-25 19:27:36 -04:00
SeanOMik
fc57777a45
render: move render targets to be graph slots, create present passes and base passes
...
ci/woodpecker/pr/debug Pipeline failed
Details
ci/woodpecker/pr/release Pipeline failed
Details
Since the render graph no longer has default slots, base passes must be created that supply things like render targets. This also makes it easier to render offscreen to some other surface that is not the window, or just some other texture
2024-05-19 12:56:03 -04:00