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
SeanOMik
8c3446389c
render: code cleanup
ci/woodpecker/pr/debug Pipeline failed
Details
ci/woodpecker/pr/release Pipeline failed
Details
2024-05-18 11:02:07 -04:00
SeanOMik
64e6e4a942
render: make it easier to share bind groups and bind group layouts between passes
ci/woodpecker/pr/debug Pipeline failed
Details
ci/woodpecker/pr/release Pipeline failed
Details
2024-05-17 17:43:46 -04:00
SeanOMik
cee6e44d61
render: support creating bindgroups for passes and updating buffers every frame
ci/woodpecker/pr/debug Pipeline failed
Details
ci/woodpecker/pr/release Pipeline failed
Details
2024-05-14 18:46:35 -04:00
SeanOMik
b94a8e3cd3
Make it possible to create a complete pipeline descriptor for a pass
ci/woodpecker/pr/debug Pipeline failed
Details
ci/woodpecker/pr/release Pipeline failed
Details
2024-05-11 09:19:58 -04:00
SeanOMik
bccf6287c0
render: get first image from RenderGraph, just a simple hard coded triangle
ci/woodpecker/pr/debug Pipeline failed
Details
ci/woodpecker/pr/release Pipeline failed
Details
2024-05-08 18:27:10 -04:00
SeanOMik
daa6fc3d4b
move profiles to root workspace Cargo.toml so they aren't ignored
2024-05-08 18:25:12 -04:00
SeanOMik
a4e80d4fec
render: continue work of render graph, expanding RenderGraphPass and removing things from the renderer
ci/woodpecker/pr/debug Pipeline failed
Details
ci/woodpecker/pr/release Pipeline failed
Details
2024-05-04 10:02:50 -04:00
SeanOMik
4c2ed6ca80
render: create foundation of render graph, also add super simple topological sort for pass execution path
2024-04-28 17:51:35 -04:00
SeanOMik
669cc7590c
examples: remove some warnings
ci/woodpecker/push/debug Pipeline failed
Details
2024-04-27 19:45:59 -04:00
SeanOMik
d1f1e03cbb
scripting: improve macros to make it easier to create wrappers
2024-04-27 19:43:45 -04:00
SeanOMik
29c68abbbb
scripting: fix lua scripting ( #13 ), create an example for it
ci/woodpecker/push/debug Pipeline failed
Details
2024-04-27 00:52:47 -04:00
SeanOMik
1b08482ef7
resource: fix wait_for_load haning when using handles from 'request_raw'
2024-04-27 00:31:20 -04:00
SeanOMik
15807a3dc1
resource: impl Reflect for a bunch of types, add some utility methods to handles
2024-04-27 00:28:49 -04:00
SeanOMik
f0d36e7b56
ecs: impl Clone for World and return entity in dynamic views
2024-04-27 00:21:26 -04:00
SeanOMik
6a11f7cbb7
Merge pull request 'Improve Performance in Scenes With Many Lights' ( #14 ) from bugfix/many-lights-poor-performance into main
...
ci/woodpecker/push/debug Pipeline failed
Details
Reviewed-on: #14
2024-04-24 19:55:15 -04:00
SeanOMik
db501015d0
Create an example project to test transform interpolation
2024-04-24 00:30:30 -04:00
SeanOMik
53837d469b
ecs: fix BatchedSystem, implement ways for `Criteria`s to modify the world before and after execution
2024-04-24 00:28:01 -04:00
SeanOMik
e2c6b557bb
render: improve performance of transform interpolation by using ecs components
2024-04-22 01:07:35 -04:00
SeanOMik
337ce18e8c
ecs: update existing components on entity in World::insert
2024-04-22 00:20:42 -04:00
SeanOMik
8eac563229
render: significantly improve performance of TransformBuffers
...
Before the changes, a release build of 'many-lights' was running at about 130fps, now its 430fps
2024-04-21 00:54:45 -04:00
SeanOMik
24e1c0281e
Make tracy profiling an optional feature, create 'many-lights' example
2024-04-20 00:08:25 -04:00
SeanOMik
246705b80b
game: some profiling improvements
2024-04-19 23:37:08 -04:00
SeanOMik
3c73e1d7e2
render: only run system_update_world_transforms for scenes that were modified
2024-04-18 22:38:15 -04:00
SeanOMik
25aa902e02
render: use WorldTransforms in the renderer
ci/woodpecker/push/debug Pipeline failed
Details
2024-04-17 20:46:46 -04:00
SeanOMik
12c8ece418
ecs: create a DynamicViewState that can be used to create a dynamic view without dealing with lifetimes
ci/woodpecker/push/debug Pipeline failed
Details
2024-04-13 02:10:25 -04:00
SeanOMik
60ec62c558
scene: improve docs and some code cleanup
ci/woodpecker/push/debug Pipeline failed
Details
2024-04-10 23:55:48 -04:00
SeanOMik
2daf617ba3
scene: implement WorldTransform struct to simplify getting the world transform of scene nodes
2024-04-10 23:45:25 -04:00
SeanOMik
0668be06e2
ecs: documentation improvements for filter queries
2024-04-10 23:18:11 -04:00
SeanOMik
347427a841
ecs: remove compiler warning
2024-04-10 22:27:44 -04:00
SeanOMik
4162150c5f
ecs: fix issue with Entities query returning the incorrect entity ids
2024-04-10 22:27:23 -04:00
SeanOMik
4a0d003181
ecs: add not filter, improve the code for inserting components into entity, bundle cleanup and improvements
2024-04-10 22:26:49 -04:00
SeanOMik
01a74ab9a6
Rewrite nix-shell, use mold for the linker
ci/woodpecker/push/debug Pipeline failed
Details
2024-04-04 23:58:59 -04:00
SeanOMik
3dfb2520ce
ecs: add some spans around the system executors
ci/woodpecker/push/debug Pipeline failed
Details
2024-04-01 12:02:16 -04:00
SeanOMik
f3b5106073
reflect: fix warnings
ci/woodpecker/push/debug Pipeline failed
Details
2024-04-01 11:17:19 -04:00
SeanOMik
7ae38476fa
Merge pull request 'Fix #6 : Rendering Shared 3D Models' ( #10 ) from bug/6-rendering-shared-models into main
...
ci/woodpecker/push/debug Pipeline failed
Details
Reviewed-on: #10
2024-04-01 11:03:00 -04:00
SeanOMik
0a9e5ebcdb
render: improve fix for rendering shared 3d modules
2024-04-01 10:50:17 -04:00
SeanOMik
dd61e8e66c
render: hack to get rendering shared 3d modules working
2024-03-31 23:02:18 -04:00
SeanOMik
a3118f32e2
resource: implement retrieving loaded SceneGraph dependencies
2024-03-31 13:37:25 -04:00
SeanOMik
aa8d94851c
game: rewrite EventQueue due to new ecs requirement of Send + Sync for resources, use new SceneGraph in renderer
2024-03-31 13:24:32 -04:00
SeanOMik
a39d259bb4
Switch nix-shell to use oxalica overlay to get miri working, fix memory leak in archetypes
2024-03-31 10:56:04 -04:00
SeanOMik
a17c035c05
resource: use a SceneGraph for loading gltf nodes, make resources Send + Sync
2024-03-31 00:32:31 -04:00
SeanOMik
a2aac25249
ecs, reflect: implement Bundle for (), use `nobuild` instead of `compile_fail` for reflect rustdocs
2024-03-31 00:29:12 -04:00
SeanOMik
e5018c8258
reflect: fix type registry from changes with ecs resources
2024-03-30 22:42:41 -04:00
SeanOMik
e00d0d71d1
examples: move assets outside of testbed for other examples
2024-03-30 22:20:53 -04:00
SeanOMik
46cdcfdd3b
ecs: make resources Send + Sync, rewrite Commands, CommandsQueue so that they are Send + Sync
2024-03-30 22:20:52 -04:00
SeanOMik
61efc358ce
scene: make scenes own its own world, no references
2024-03-24 22:40:38 -04:00
SeanOMik
763d51ae36
move some stuff out of testbed into lyra-game
2024-03-22 22:55:22 -04:00