SeanOMik
958c86cf73
Merge pull request 'Fix #19 : Lua crashes when spawning entities in optimized builds' ( #27 ) from fix/scripting-switch-to-mlua into main
...
CI / build (push) Failing after 3m44s
Details
Reviewed-on: #27
2024-09-29 21:39:20 -04:00
SeanOMik
ef2b0bf326
ecs,scripting: fix invalid resources being passed to lua
...
CI / build (pull_request) Failing after 3m35s
Details
The issue was World::get_resource_ptr, it was returning a pointer to the AtomicRefCell instead of the actual resource data
2024-09-29 14:35:24 -04:00
SeanOMik
fa22a0310c
scripting: switch to latest mlua, create custom impl of lua's `getmetatable`
2024-09-29 15:59:48 -04:00
SeanOMik
02f0c93aa2
game: fix some unhandled device events causing panics
2024-09-28 22:05:57 -04:00
SeanOMik
8fb686b7fe
scripting: switch to mlua, scripts need to be tested and fixed
...
currently the lua-scripting example doesnt work. For some reason the userdata's metatable is a boolean...
2024-09-28 12:32:37 -04:00
SeanOMik
798719a7a2
game: remove unused enum InputEvent, remove some warnings
2024-09-27 21:09:33 -04:00
SeanOMik
d6d6b2df72
game: improve event system
2024-09-27 21:03:57 -04:00
SeanOMik
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
SeanOMik
9b1cc8c364
game: improve event handling, update input systems to use new event handling
CI / build (push) Failing after 12m37s
Details
2024-09-24 20:43:08 -04:00
SeanOMik
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
SeanOMik
eb43fad6c7
Merge pull request 'Update wgpu to 0.20.1 and winit to 0.30.3' ( #26 ) from chore/winit-wgpu-update into main
...
CI / build (push) Failing after 14m58s
Details
Reviewed-on: #26
2024-09-23 19:06:26 -04:00
SeanOMik
7219013593
delete Cargo.lock.old
CI / build (pull_request) Failing after 3m18s
Details
2024-09-23 18:53:32 -04:00
SeanOMik
33ddf689be
game: create sync window system, handle more window events in the winit plugin
2024-09-22 21:17:40 -04:00
SeanOMik
393b4206d3
game: start on updated WindowOptions component and window_sync_system
2024-09-21 14:09:24 -04:00
SeanOMik
782d64f6cf
ecs: implement an actual Filter trait, create a Changed filter
2024-09-21 14:06:21 -04:00
SeanOMik
2107b8f7b0
engine: move winit ApplicationHandler to winit plugin
2024-09-19 17:30:30 -04:00
SeanOMik
8b1077cab7
engine: get a window showing and things rendered
2024-09-18 21:45:15 -04:00
SeanOMik
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
SeanOMik
2b44d7f354
render: implement wgsl-preprocessor, split shaders
CI / build (push) Failing after 7m56s
Details
2024-09-14 20:08:18 -04:00
SeanOMik
60c139f9b2
ecs: create DynamicViewOne
CI / build (push) Failing after 11m20s
Details
2024-09-02 20:34:02 -04:00
SeanOMik
256025849e
Merge pull request 'Implement Shadows' ( #24 ) from feat/shadow-maps into main
...
CI / build (push) Successful in 3m38s
Details
Reviewed-on: #24
2024-08-09 23:10:28 -04:00
SeanOMik
8545e7e27d
render: rewrite PCF for spot lights to somehow fix PCSS directional lights
CI / build (pull_request) Successful in 9m48s
Details
2024-08-09 22:01:57 -04:00
SeanOMik
a85178eeea
Revert "render: shadow maps and PCF for spot lights"
...
This reverts commit 8c1738334c
.
2024-08-09 21:51:56 -04:00
SeanOMik
8c1738334c
render: shadow maps and PCF for spot lights
2024-07-24 20:10:32 -04:00
SeanOMik
fefcf58765
render: make shadow depth bias configurable per light source
2024-07-21 21:53:02 -04:00
SeanOMik
b0a6d30afc
render: fix directional light shadows
2024-07-21 21:09:29 -04:00
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
54b47c2178
ecs: implement change tracking for world resources
2024-07-19 16:07:03 -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
7ff67a194b
create an example for testing shadow maps
2024-06-28 16:15:21 -04:00
SeanOMik
c4aebdb25d
render: implement fxaa ( #8 )
CI / build (push) Successful in 3m33s
Details
2024-06-28 15:26:14 -04:00