Commit Graph

  • 2107b8f7b0
    engine: move winit ApplicationHandler to winit plugin chore/winit-wgpu-update SeanOMik 2024-09-19 17:30:30 -0400
  • 8b1077cab7
    engine: get a window showing and things rendered SeanOMik 2024-09-18 21:45:15 -0400
  • 45fd190409
    update wgpu and winit to latest versions SeanOMik 2024-09-18 19:47:55 -0400
  • 2b44d7f354 render: implement wgsl-preprocessor, split shaders main SeanOMik 2024-09-14 20:06:55 -0400
  • 60c139f9b2 ecs: create DynamicViewOne SeanOMik 2024-09-02 19:29:37 -0400
  • 256025849e Merge pull request 'Implement Shadows' (#24) from feat/shadow-maps into main SeanOMik 2024-08-09 23:10:28 -0400
  • 8545e7e27d
    render: rewrite PCF for spot lights to somehow fix PCSS directional lights feat/shadow-maps SeanOMik 2024-08-09 22:01:57 -0400
  • a85178eeea Revert "render: shadow maps and PCF for spot lights" SeanOMik 2024-08-09 21:51:56 -0400
  • 8c1738334c
    render: shadow maps and PCF for spot lights SeanOMik 2024-07-24 20:10:32 -0400
  • fefcf58765
    render: make shadow depth bias configurable per light source SeanOMik 2024-07-21 21:53:02 -0400
  • b0a6d30afc
    render: fix directional light shadows SeanOMik 2024-07-21 21:09:29 -0400
  • fef709d5f1
    render: implement PCF for point lights, support per-light shadow settings SeanOMik 2024-07-21 12:02:35 -0400
  • c91ee67961
    render: improve shadow settings to make it possible to switch between PCF, PCSS, hardware 2x2 PCF, or disable filtering all together SeanOMik 2024-07-19 17:56:27 -0400
  • c961568b96
    render: update the shadow filting poisson disc when shadow settings are modified SeanOMik 2024-07-19 16:07:40 -0400
  • 54b47c2178
    ecs: implement change tracking for world resources SeanOMik 2024-07-19 16:07:03 -0400
  • 4449172c2b
    render: implement PCSS for directional lights SeanOMik 2024-07-18 23:43:08 -0400
  • 4c6c6c4dd5
    render: PCF with poisson disc on directional lights SeanOMik 2024-07-14 22:14:08 -0400
  • 27bc88c5a7
    render: pass shadow settings to gpu SeanOMik 2024-07-14 19:46:15 -0400
  • ff06bd55f3
    render: simple PCF SeanOMik 2024-07-14 19:06:38 -0400
  • d02258224a
    render: fix bug with texture atlas not packing textures in last column SeanOMik 2024-07-14 12:24:13 -0400
  • b45c2f4fab
    render: point light shadows in texture atlas, fix bug with unaligned GpuSlotBuffer SeanOMik 2024-07-13 00:56:09 -0400
  • 40fa9c09da
    render: fix shadow map atlas packing by writing my own skyline packer SeanOMik 2024-07-12 14:58:18 -0400
  • 87aa440691
    render: create a GpuSlotBuffer for stable indices in a gpu buffer SeanOMik 2024-07-11 20:00:46 -0400
  • cc1c482c40
    render: provide shadow texture atlas frame for each shadow casting light SeanOMik 2024-07-11 18:27:26 -0400
  • a4ce4cb432
    render: implement packed texture atlas for shadow maps SeanOMik 2024-07-10 20:16:21 -0400
  • e2b554b4ef
    render: implement simple texture atlas for the shadow maps SeanOMik 2024-07-05 17:29:38 -0400
  • 6d57b40629
    render: cull back faces, code cleanup to fix warnings SeanOMik 2024-07-04 23:28:21 -0400
  • fd65f754cf
    render: get simple directional shadow maps working SeanOMik 2024-07-04 13:43:36 -0400
  • 6c6893149a
    render: bind direction light projection matrix to meshes shader SeanOMik 2024-06-30 21:58:08 -0400
  • 1c649b2eb6
    render: bind the shadow map atlas to the meshes shaders SeanOMik 2024-06-30 21:42:08 -0400
  • 7b2d2424a3
    render: start moving to a shadow map atlas texture and expose the resources as slots SeanOMik 2024-06-30 20:56:41 -0400
  • e8974bbd44
    render: create a depth map for the directional light SeanOMik 2024-06-30 19:33:51 -0400
  • 3a80c069c9
    render: move most of the mesh processing to a MeshPrepare node SeanOMik 2024-06-29 22:23:49 -0400
  • 7ff67a194b
    create an example for testing shadow maps SeanOMik 2024-06-28 16:15:21 -0400
  • c4aebdb25d
    render: implement fxaa (#8) SeanOMik 2024-06-28 15:26:14 -0400
  • 5ebbec8cf9
    ci: switch to ForgeJo actions SeanOMik 2024-06-28 13:50:26 -0400
  • 2eeca335e2
    game: run clippy SeanOMik 2024-06-28 13:25:48 -0400
  • 96dea5b1f9
    render: code cleanup SeanOMik 2024-06-28 13:16:47 -0400
  • 007b1047ef
    render: implement view target chains for post processing steps SeanOMik 2024-06-27 23:48:24 -0400
  • 545da71cda
    render: create ViewTarget to make it easier to render to a non-surface texture and chain together postprocess steps SeanOMik 2024-06-26 21:33:39 -0400
  • 0e71c5734f
    render: make it easier to get Frame from RenderTarget SeanOMik 2024-06-26 17:14:31 -0400
  • 6c1bff5768
    render: get sub render graphs working and create a simple test of them SeanOMik 2024-06-25 21:32:29 -0400
  • 5f1a61ef52
    render: create RenderTarget and Frame, making it easier to render to a non-surface texture SeanOMik 2024-06-23 20:25:57 -0400
  • f755a4c53b
    render: create a node for sub render graphs, create a graph init node SeanOMik 2024-06-22 17:00:32 -0400
  • 9d3de88c50
    render: cleanup SeanOMik 2024-06-21 22:10:35 -0400
  • f440f306be
    render: impl Node for RenderGraph in prep for sub-graphs SeanOMik 2024-06-21 22:06:58 -0400
  • f17bf40c77
    render: rename RenderGraph::add_pass to add_node SeanOMik 2024-06-21 21:58:40 -0400
  • 5fc1a0f134
    Add todo panic in code when window is resized SeanOMik 2024-06-16 20:05:04 -0400
  • 3209d65b93
    push code for debugging debug/sig-abort SeanOMik 2024-06-16 15:34:06 -0400
  • 33358662e2
    fix docstest errors in render graph SeanOMik 2024-06-16 00:15:54 -0400
  • 0edba69b02
    fix warnings, remove some commented code from base shader SeanOMik 2024-06-16 00:11:21 -0400
  • 6182a4b9c8
    render: simplify light buffer updating SeanOMik 2024-06-15 23:52:46 -0400
  • 7576979797
    render: fix lighting with more than one light SeanOMik 2024-06-15 23:52:10 -0400
  • acb58a15ff Merge pull request 'Implement a Render Graph' (#16) from feature/render-graph into main SeanOMik 2024-06-15 18:54:46 -0400
  • d5348ec172
    render: a tiny bit of code cleanup SeanOMik 2024-06-12 21:30:09 -0400
  • 9ce79e6b29
    resource: fix tests, render: remove warning SeanOMik 2024-06-12 21:23:27 -0400
  • 6d7932f6a5
    render: remove IDs for everything, use only labels to identify things SeanOMik 2024-06-11 20:59:55 -0400
  • 28b9604189
    render: rename RenderGraphPass to Node to better represent what it actually is in the RenderGraph SeanOMik 2024-06-06 19:37:25 -0400
  • a0a2acfec0
    render: add todo in code SeanOMik 2024-06-03 19:06:07 -0400
  • ef68b2a4c5
    render: create a RenderGraphLabel trait for graph labels instead of strings SeanOMik 2024-06-02 21:35:59 -0400
  • 41d77c5687
    render: a tiny bit of code cleanup in mesh pass SeanOMik 2024-06-01 23:05:43 -0400
  • bb21805278
    render: add a debug_assert to ensure the developer doesn't reuse ids for slots SeanOMik 2024-06-01 22:55:50 -0400
  • c846d52b0d
    render: finally get meshes and entities rendering again with the render graph! SeanOMik 2024-05-31 20:11:35 -0400
  • 7f5a1cd953
    render: a bit of code cleanup SeanOMik 2024-05-25 19:37:43 -0400
  • 9a48075f07
    render: change to manual creation of render graph exeuction path, rewrite light cull compute pass into the render graph SeanOMik 2024-05-25 19:27:36 -0400
  • fc57777a45
    render: move render targets to be graph slots, create present passes and base passes SeanOMik 2024-05-19 12:56:03 -0400
  • 8c3446389c
    render: code cleanup SeanOMik 2024-05-18 11:02:07 -0400
  • 64e6e4a942
    render: make it easier to share bind groups and bind group layouts between passes SeanOMik 2024-05-17 17:43:46 -0400
  • cee6e44d61
    render: support creating bindgroups for passes and updating buffers every frame SeanOMik 2024-05-14 18:46:35 -0400
  • b94a8e3cd3
    Make it possible to create a complete pipeline descriptor for a pass SeanOMik 2024-05-11 09:19:58 -0400
  • bccf6287c0
    render: get first image from RenderGraph, just a simple hard coded triangle SeanOMik 2024-05-08 18:27:10 -0400
  • daa6fc3d4b
    move profiles to root workspace Cargo.toml so they aren't ignored SeanOMik 2024-05-08 18:25:12 -0400
  • a4e80d4fec
    render: continue work of render graph, expanding RenderGraphPass and removing things from the renderer SeanOMik 2024-05-04 10:02:50 -0400
  • 4c2ed6ca80
    render: create foundation of render graph, also add super simple topological sort for pass execution path SeanOMik 2024-04-28 17:51:35 -0400
  • 669cc7590c
    examples: remove some warnings SeanOMik 2024-04-27 19:45:59 -0400
  • d1f1e03cbb
    scripting: improve macros to make it easier to create wrappers SeanOMik 2024-04-27 19:43:45 -0400
  • 29c68abbbb
    scripting: fix lua scripting (#13), create an example for it SeanOMik 2024-04-27 00:52:47 -0400
  • 1b08482ef7
    resource: fix wait_for_load haning when using handles from 'request_raw' SeanOMik 2024-04-27 00:31:20 -0400
  • 15807a3dc1
    resource: impl Reflect for a bunch of types, add some utility methods to handles SeanOMik 2024-04-27 00:28:49 -0400
  • f0d36e7b56
    ecs: impl Clone for World and return entity in dynamic views SeanOMik 2024-04-27 00:21:26 -0400
  • 6a11f7cbb7 Merge pull request 'Improve Performance in Scenes With Many Lights' (#14) from bugfix/many-lights-poor-performance into main SeanOMik 2024-04-24 19:55:15 -0400
  • db501015d0
    Create an example project to test transform interpolation SeanOMik 2024-04-24 00:30:30 -0400
  • 53837d469b
    ecs: fix BatchedSystem, implement ways for `Criteria`s to modify the world before and after execution SeanOMik 2024-04-24 00:28:01 -0400
  • e2c6b557bb
    render: improve performance of transform interpolation by using ecs components SeanOMik 2024-04-22 01:07:35 -0400
  • 337ce18e8c
    ecs: update existing components on entity in World::insert SeanOMik 2024-04-22 00:20:42 -0400
  • 8eac563229
    render: significantly improve performance of TransformBuffers SeanOMik 2024-04-21 00:54:45 -0400
  • 24e1c0281e
    Make tracy profiling an optional feature, create 'many-lights' example SeanOMik 2024-04-20 00:08:25 -0400
  • 246705b80b
    game: some profiling improvements SeanOMik 2024-04-19 23:37:08 -0400
  • 3c73e1d7e2
    render: only run system_update_world_transforms for scenes that were modified SeanOMik 2024-04-18 22:38:15 -0400
  • 25aa902e02
    render: use WorldTransforms in the renderer SeanOMik 2024-04-17 20:46:46 -0400
  • 12c8ece418
    ecs: create a DynamicViewState that can be used to create a dynamic view without dealing with lifetimes SeanOMik 2024-04-13 02:10:25 -0400
  • 60ec62c558
    scene: improve docs and some code cleanup SeanOMik 2024-04-10 23:55:48 -0400
  • 2daf617ba3
    scene: implement WorldTransform struct to simplify getting the world transform of scene nodes SeanOMik 2024-04-10 23:45:25 -0400
  • 0668be06e2
    ecs: documentation improvements for filter queries SeanOMik 2024-04-10 23:18:11 -0400
  • 347427a841
    ecs: remove compiler warning SeanOMik 2024-04-10 22:27:44 -0400
  • 4162150c5f
    ecs: fix issue with Entities query returning the incorrect entity ids SeanOMik 2024-04-10 22:27:23 -0400
  • 4a0d003181
    ecs: add not filter, improve the code for inserting components into entity, bundle cleanup and improvements SeanOMik 2024-04-10 22:26:49 -0400
  • 01a74ab9a6
    Rewrite nix-shell, use mold for the linker SeanOMik 2024-04-04 23:58:59 -0400
  • 3dfb2520ce
    ecs: add some spans around the system executors SeanOMik 2024-04-01 12:02:16 -0400
  • f3b5106073
    reflect: fix warnings SeanOMik 2024-04-01 11:17:19 -0400