Commit Graph

365 Commits

Author SHA1 Message Date
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
SeanOMik e6b4e83dee
scripting: fix math type wrapper macro for lua. Expose math types as userdata through LuaProxy trait 2024-02-19 17:57:48 -05:00
SeanOMik ea958f9f18
scripting: convert LuaDeltaTime into a Lua Number instead of using it as userdata 2024-02-19 11:27:49 -05:00
SeanOMik 639ec0ee42
resource: fix resource manager tests
A test was failing since 'watch_image' was deleting the file and recreating it while the other test was running
2024-02-18 23:43:02 -05:00
SeanOMik e6c9e0725c
scripting: remove ReflectedLuaTableProxy and slightly modify ReflectLuaProxy to replace it 2024-02-18 23:42:57 -05:00
SeanOMik 20a36795dc
scripting: update elua, change test lua script 2024-02-17 19:08:11 -05:00
SeanOMik 955ca03587 Merge branch 'feature/elua-switch' into feature/early-scripting 2024-02-17 17:34:40 -05:00
SeanOMik 6cd38376e0
scripting: update elua submodule 2024-02-17 14:30:27 -05:00
SeanOMik 4247c4f5c1
scripting: switch to elua, create LuaTableProxy for proxying rust types into and from lua tables 2024-02-17 14:27:16 -05:00
SeanOMik f2f8248de7
scripting: add elua as a git submodule, remove mlua from the cargo.toml 2024-02-14 20:33:07 -05:00
SeanOMik 82c13a7dd2
scripting: do a bit of code cleanup 2024-02-12 20:26:51 -05:00
SeanOMik 747d4dcf19
scripting: implement querying for resources from lua 2024-02-12 20:26:45 -05:00