Commit Graph

276 Commits

Author SHA1 Message Date
SeanOMik 5c1ce809ff
render: get some lights showing up with tiled forward rendering
For some reason there's weird square in the light source, and the dynamic light is only applied to the top left tile
2024-03-17 15:20:17 -04:00
SeanOMik c73c1a7f43
render: fix segfault in LightCullCompute 2024-03-16 22:58:38 -04:00
SeanOMik 4ce21d4db0
render: dont send the same material to the gpu multiple times, speeding up gpu texture loading 2024-03-16 19:12:32 -04:00
SeanOMik 1818a0b48b
position the camera in a good position in the scene 2024-03-16 18:50:22 -04:00
SeanOMik cfd5cabfbb
render: create light cull compute shader, bind buffers, etc. 2024-03-16 18:39:07 -04:00
SeanOMik 22c08ba66e
render: improve the render buffer wrapper, use it for the camera uniform 2024-03-14 23:08:21 -04:00
SeanOMik f345f065c1
reflect: create ReflectedMap 2024-03-10 00:17:09 -05:00
SeanOMik aa3a4a17d7
resource: implement waiting for resource dependencies to be loaded 2024-03-10 00:11:15 -05:00
SeanOMik 4a285e5866
Merge branch 'feature/async-resource-loading' into main 2024-03-09 00:48:42 -05:00
SeanOMik 1c29e6fa72
cleanup some simple compiler warnings 2024-03-09 00:48:23 -05:00
SeanOMik de64b06e46
ecs: fix warning 2024-03-09 00:48:22 -05:00
SeanOMik dead32dbab
resource: asyncronous loading of resources 2024-03-09 00:48:22 -05:00
SeanOMik 1d7d13eb7b Merge pull request 'Some gltf improvements' (#4) from feature/gltf-scene-fixes into main
Reviewed-on: #4
2024-03-09 00:46:42 -05:00
SeanOMik cd27c9602c Inline a few things 2024-03-09 00:46:42 -05:00
SeanOMik 5331cfc2c4 resource, render: load in texture sampler from gltf and use them in the renderer 2024-03-09 00:46:42 -05:00
SeanOMik b941fa2fe0 cleanup some simple compiler warnings 2024-03-09 00:46:42 -05:00
SeanOMik e36307eef7 render: fix the TransformBuffers that could only store a single Transform for an entity
This caused Scenes to be rendered poorly since all meshes would use the Transform of the last processed mesh
2024-03-09 00:46:42 -05:00
SeanOMik fba925512b render: process GltfScenes and Node local transforms 2024-03-09 00:46:42 -05:00
SeanOMik c1b5ca768f resource: Create Gltf object, expand GltfScene to collect all node transforms, other qol changes 2024-03-09 00:46:42 -05:00
SeanOMik c3de9e77db ecs: fix filters 2024-03-09 00:46:42 -05:00
SeanOMik 7db913d15b resource: load multiple gltf scenes 2024-03-09 00:46:42 -05:00
SeanOMik 556b603f83 resource: improve gltf loader to show scene hierarchy and node local transform 2024-03-09 00:46:42 -05:00
SeanOMik ad40621f7c scene: some cleanup 2024-03-09 00:46:42 -05:00
SeanOMik bcc035ab91 Some cleanup 2024-03-09 00:46:42 -05:00
SeanOMik 8aae479df3 Create a new crate! lyra-scene for representing a SceneGraph in an ECS world 2024-03-09 00:46:42 -05:00
SeanOMik b76832ec05 ecs: fix World::insert, finish a TODO related to it
The TODO was that if the archetype has a single entity, add a component column for the new component instead of moving the entity to a brand new archetype
2024-03-09 00:46:42 -05:00
SeanOMik ad82f61cf4 Merge pull request 'Implement relationships in the ECS' (#3) from feature/ecs-relations into main
Reviewed-on: #3
2024-03-03 16:22:39 -05:00
SeanOMik 70fecc8cdd
fixes across crates after changes to ecs 2024-03-02 22:55:13 -05:00
SeanOMik c0df9f2d65
ecs: fix a typo in docs 2024-03-02 22:55:12 -05:00
SeanOMik 6210778e9d
ecs: some code cleanup 2024-03-02 22:55:11 -05:00
SeanOMik 7d90b1d38f
ecs: improve docs 2024-03-02 22:55:10 -05:00
SeanOMik 21537481c9
ecs: add relations, improve docs 2024-03-02 22:55:10 -05:00
SeanOMik d4135e0216
ci: fix ci and change triggers 2024-03-02 22:51:46 -05:00
SeanOMik 71693971c2 Merge pull request 'Create an early scripting engine' (#2) from feature/early-scripting into main
Reviewed-on: #2
2024-03-02 22:28:55 -05:00
SeanOMik 31398d5446
scripting: update elua submodule 2024-02-29 19:31:30 -05:00
SeanOMik de4fb76f31
scripting: update for elua and new wip support for teal 2024-02-28 21:10:52 -05:00
SeanOMik aadc8e5094
scripting: expose all other ActionHandler methods to Lua 2024-02-25 20:53:20 -05:00
SeanOMik d0179cda69
scripting: get FreeFlyCamera working with ActionHandler created by Lua 2024-02-25 17:42:14 -05:00
SeanOMik 5521d4a659
scripting: start work on exposing InputActions to lua, implement inserting reflected resource 2024-02-25 17:06:53 -05:00
SeanOMik 5a7ac6ad11
scripting: fix some doc comments 2024-02-24 17:57:05 -05:00
SeanOMik 388f686917
scripting: create `FN_NAME_INTERNAL_AS_COMPONENT` for implicitly converting some types as components 2024-02-24 15:27:01 -05:00
SeanOMik 6731fcd7f2
scripting: implement spawning entity with loaded 3d models 2024-02-24 14:32:06 -05:00
SeanOMik 4a7cdfab80
ecs: fix executing deferred fn system arguments 2024-02-24 14:30:09 -05:00
SeanOMik 90b821f95c
scripting: implement loading assets in lua 2024-02-24 11:16:09 -05:00
SeanOMik 5dfc073db5
ecs: add commands test and fix Commands 2024-02-24 11:09:26 -05:00
SeanOMik 1f43a9d4da
fix compiler errors after some changes to game crate 2024-02-23 16:43:23 -05:00
SeanOMik f2d302c6d4
reflect: ReflectedComponent takes ownership over reflected component when inserting into entity 2024-02-23 16:39:51 -05:00
SeanOMik 0373f68cc3
resource: create the ability to keep resources as type erased data 2024-02-23 16:38:38 -05:00
SeanOMik 380c8df740
ecs: implement deferred system commands, change the way system fn arguments are implemented 2024-02-23 16:34:21 -05:00
SeanOMik e354528942
scripting: Implement LuaVec3:move_by, and add more methods for Lua on math types 2024-02-19 23:14:38 -05:00