Commit Graph

240 Commits

Author SHA1 Message Date
SeanOMik e21490cd6a
Start working on assets 2023-09-12 14:25:33 -04:00
SeanOMik eb941794dc
Merge branch 'feature/plugins' into 'main' 2023-09-10 00:55:27 -04:00
SeanOMik 71c1188f3a
Finish implementing plugins, create default plugins, create input plugin 2023-09-10 00:38:54 -04:00
SeanOMik e96cb3585b
Start working on game plugins 2023-09-09 10:51:58 -04:00
SeanOMik 31e6af7015
Clean up code to be better suited to be used as a library 2023-09-08 01:06:51 -04:00
SeanOMik 0ff78cf6d6
Remove .vscode/settings.json 2023-09-08 01:06:51 -04:00
SeanOMik 32689e77ce
Convert the engine into a lib package 2023-09-08 01:06:50 -04:00
SeanOMik 2e225ccd09
Some code cleanup 2023-09-08 01:06:49 -04:00
SeanOMik 81c3b5be55
Fix the logger to include info logs from other crates 2023-09-08 01:06:48 -04:00
SeanOMik 3d350448dc
Add depth buffer 2023-09-08 01:06:47 -04:00
SeanOMik 25aff0cc1f
Remove resources created by entities after they die 2023-09-08 01:06:46 -04:00
SeanOMik ef4426a991
Update entity model buffers when changed 2023-09-08 01:06:45 -04:00
SeanOMik f339d048b2
Expand transform buffers when they're full 2023-09-08 01:06:45 -04:00
SeanOMik ec960b8f94
Fix rendering multiple entities
this is done by using a large dynamic uniform buffer for storing all transforms of entities
2023-09-08 01:06:44 -04:00
SeanOMik 3068710ba4
Clean up code a bit 2023-09-08 01:06:43 -04:00
SeanOMik 73b44857eb
Switch ecs to edict 2023-09-08 01:06:42 -04:00
SeanOMik 805fde2d4e
Rewrite the input system using an event based system 2023-09-08 01:06:41 -04:00
SeanOMik 77053d56ad
Work on events for the input stuff 2023-09-08 01:06:40 -04:00
SeanOMik 5a37fcf1e6
Implement MouseMotion and CursorMoved input events 2023-09-08 01:06:39 -04:00
SeanOMik e517852b25
add just pressed input events 2023-09-08 01:06:38 -04:00
SeanOMik d25ecf0e00
Add resource system, early input system, custom hecs world wrapper 2023-09-08 01:06:38 -04:00
SeanOMik f7a455997d
use the graph system dispatcher to execute systems, make it easier to add systems 2023-09-08 01:06:37 -04:00
SeanOMik 4c6edff639
implement simple ecs systems 2023-09-08 01:06:36 -04:00
SeanOMik 7c381672d9
simple ecs systems! 2023-09-08 01:06:35 -04:00
SeanOMik d51e783a50
fix some issues caused by the rebase 2023-09-08 01:06:34 -04:00
SeanOMik 7063f57a7b
create SimpleSystem 2023-09-08 01:06:33 -04:00
SeanOMik f11c175db1
add transform matrix buffer 2023-09-08 01:06:32 -04:00
SeanOMik 5d81d0acfe
change method name 2023-09-08 01:06:31 -04:00
SeanOMik b957414143
Use an actual render queue instead of a HashMap 2023-09-08 01:06:31 -04:00
SeanOMik 645dd93f21
Add better 3d camera, fix memory 'leak' caused by not clearing the RenderJob queue 2023-09-08 01:06:30 -04:00
SeanOMik 3fc8cefa0e
add simple 3d camera, rename Model2dComponent to MeshComponent, rename base shader file 2023-09-08 01:06:29 -04:00
SeanOMik 77d29d68c8
Move Transform to math module 2023-09-08 01:06:28 -04:00
SeanOMik 836afe2c0e
Add helper methods to Transform 2023-09-08 01:06:27 -04:00
SeanOMik 265c3dbc5a
Significant render refactoring, implement transformation matrix 2023-09-08 01:06:26 -04:00
SeanOMik 53db829e19
remove system.rs 2023-09-08 01:06:25 -04:00
SeanOMik 0b4d062725
Implmenting indices, and textures 2023-09-08 01:06:24 -04:00
SeanOMik b7200a4cc6
Implement vertex buffers 2023-09-08 01:06:24 -04:00
SeanOMik 9b570a68e3
Add basic resources module 2023-09-08 01:06:23 -04:00
SeanOMik 3fe294b8b2
Create the ground works for an ECS in the engine 2023-09-08 01:06:22 -04:00
SeanOMik bbc7c8e283
Create window, handle simple input 2023-09-08 01:05:59 -04:00