Commit graph

406 commits

Author SHA1 Message Date
798719a7a2
game: remove unused enum InputEvent, remove some warnings 2024-09-27 21:09:33 -04:00
d6d6b2df72
game: improve event system 2024-09-27 21:03:57 -04:00
f5aca87ede
ecs: don't automatically tick the world, use Res and ResMut anywhere ecs resources are requested to track changes better
now the user must manually tick the world. The engine will do this before every update
2024-09-27 21:03:27 -04:00
9b1cc8c364
game: improve event handling, update input systems to use new event handling
Some checks failed
CI / build (push) Failing after 12m37s
2024-09-24 20:43:08 -04:00
9125b91977
ecs: add WorldTick query, implement IntoSystem and FnSystem for funcs with 11 args
accidentially missed the macro call for 11 arguments
2024-09-24 20:30:37 -04:00
eb43fad6c7 Merge pull request 'Update wgpu to 0.20.1 and winit to 0.30.3' (#26) from chore/winit-wgpu-update into main
Some checks failed
CI / build (push) Failing after 14m58s
Reviewed-on: #26
2024-09-23 19:06:26 -04:00
7219013593
delete Cargo.lock.old
Some checks failed
CI / build (pull_request) Failing after 3m18s
2024-09-23 18:53:32 -04:00
33ddf689be
game: create sync window system, handle more window events in the winit plugin 2024-09-22 21:17:40 -04:00
393b4206d3
game: start on updated WindowOptions component and window_sync_system 2024-09-21 14:09:24 -04:00
782d64f6cf
ecs: implement an actual Filter trait, create a Changed filter 2024-09-21 14:06:21 -04:00
2107b8f7b0
engine: move winit ApplicationHandler to winit plugin 2024-09-19 17:30:30 -04:00
8b1077cab7
engine: get a window showing and things rendered 2024-09-18 21:45:15 -04:00
45fd190409
update wgpu and winit to latest versions
need to make a WinitPlugin though, so no window currently
2024-09-18 19:47:55 -04:00
2b44d7f354 render: implement wgsl-preprocessor, split shaders
Some checks failed
CI / build (push) Failing after 7m56s
2024-09-14 20:08:18 -04:00
60c139f9b2 ecs: create DynamicViewOne
Some checks failed
CI / build (push) Failing after 11m20s
2024-09-02 20:34:02 -04:00
256025849e Merge pull request 'Implement Shadows' (#24) from feat/shadow-maps into main
All checks were successful
CI / build (push) Successful in 3m38s
Reviewed-on: #24
2024-08-09 23:10:28 -04:00
8545e7e27d
render: rewrite PCF for spot lights to somehow fix PCSS directional lights
All checks were successful
CI / build (pull_request) Successful in 9m48s
2024-08-09 22:01:57 -04:00
a85178eeea Revert "render: shadow maps and PCF for spot lights"
This reverts commit 8c1738334c.
2024-08-09 21:51:56 -04:00
8c1738334c
render: shadow maps and PCF for spot lights 2024-07-24 20:10:32 -04:00
fefcf58765
render: make shadow depth bias configurable per light source 2024-07-21 21:53:02 -04:00
b0a6d30afc
render: fix directional light shadows 2024-07-21 21:09:29 -04:00
fef709d5f1
render: implement PCF for point lights, support per-light shadow settings 2024-07-21 12:02:35 -04:00
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
c961568b96
render: update the shadow filting poisson disc when shadow settings are modified 2024-07-19 16:07:40 -04:00
54b47c2178
ecs: implement change tracking for world resources 2024-07-19 16:07:03 -04:00
4449172c2b
render: implement PCSS for directional lights 2024-07-18 23:43:08 -04:00
4c6c6c4dd5
render: PCF with poisson disc on directional lights 2024-07-14 22:14:08 -04:00
27bc88c5a7
render: pass shadow settings to gpu 2024-07-14 19:46:15 -04:00
ff06bd55f3
render: simple PCF 2024-07-14 19:06:38 -04:00
d02258224a
render: fix bug with texture atlas not packing textures in last column 2024-07-14 12:24:13 -04:00
b45c2f4fab
render: point light shadows in texture atlas, fix bug with unaligned GpuSlotBuffer 2024-07-13 00:56:09 -04:00
40fa9c09da
render: fix shadow map atlas packing by writing my own skyline packer 2024-07-12 14:58:18 -04:00
87aa440691
render: create a GpuSlotBuffer for stable indices in a gpu buffer 2024-07-11 20:00:46 -04:00
cc1c482c40
render: provide shadow texture atlas frame for each shadow casting light 2024-07-11 18:27:26 -04:00
a4ce4cb432
render: implement packed texture atlas for shadow maps 2024-07-10 20:16:21 -04:00
e2b554b4ef
render: implement simple texture atlas for the shadow maps 2024-07-05 17:29:38 -04:00
6d57b40629
render: cull back faces, code cleanup to fix warnings 2024-07-04 23:28:21 -04:00
fd65f754cf
render: get simple directional shadow maps working 2024-07-04 13:43:36 -04:00
6c6893149a
render: bind direction light projection matrix to meshes shader 2024-06-30 21:58:08 -04:00
1c649b2eb6
render: bind the shadow map atlas to the meshes shaders 2024-06-30 21:42:08 -04:00
7b2d2424a3
render: start moving to a shadow map atlas texture and expose the resources as slots 2024-06-30 20:56:41 -04:00
e8974bbd44
render: create a depth map for the directional light 2024-06-30 19:33:51 -04:00
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
7ff67a194b
create an example for testing shadow maps 2024-06-28 16:15:21 -04:00
c4aebdb25d
render: implement fxaa (#8)
All checks were successful
CI / build (push) Successful in 3m33s
2024-06-28 15:26:14 -04:00
5ebbec8cf9
ci: switch to ForgeJo actions
All checks were successful
CI / build (push) Successful in 3m33s
2024-06-28 13:50:26 -04:00
2eeca335e2
game: run clippy 2024-06-28 13:25:48 -04:00
96dea5b1f9
render: code cleanup 2024-06-28 13:16:47 -04:00
007b1047ef
render: implement view target chains for post processing steps 2024-06-27 23:48:24 -04:00
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