Commit graph

26 commits

Author SHA1 Message Date
eced6ddf3f fix(ecs): some replacement issues 2025-11-25 13:24:59 +01:00
8aec280447 refactor(renderer): texture look up does not need a String as key anymore 2025-11-17 17:58:48 +01:00
dd89d71565 feat(renderer2d)!: made text rendering return the bounds of the rendered text for better position control but also changed render_scene_2d signature to take a mutable Scene reference 2025-10-25 21:38:14 +02:00
ca47efba42 feat(renderer2d): added a simple draw order to the Renderer2D which can be defined by the draw_index in the Render2D component 2025-10-25 01:43:34 +02:00
dab38c1e32 feat(sound): added a simple sound player to the engine with api in the App struct and a component to store metadata 2025-10-23 15:14:38 +02:00
dfdffed745 fix(Rectangle2D): now the collider will treat its position as the center and not a corner much like textures in the renderer 2025-10-20 02:41:33 +02:00
0da5200916 feat(ecs): added utility methods 2025-07-25 00:25:56 +02:00
67ac2f90e4 fix(ecs): removed unnecessary clone from Render2D Render trait implementation 2025-07-21 03:09:33 +02:00
fef128f8a7 feat(ecs): added a set_vec function to Position2D and Position3D to simply change the position components with a vector instead of manually needing to change it 2025-07-13 03:18:23 +02:00
ffb4bdf35f feat(renderer2d): Rotation2D now actually has an effect on the rotation of the sprite in the Renderer2D 2025-07-12 00:01:49 +02:00
643c5caf0e feat: added a Timer component 2025-05-06 17:09:00 +02:00
d3cf390cd8 feat: added set_size to the Rectangle2D implementation 2025-05-06 00:07:31 +02:00
fd8cf1f278 chore: renamed the structs Vec2, Vec3, Vec4, Mat2, Mat3, Mat4, Point2, Point3 to v2, v3, v4, m2, m3, m4, p2, p3 2025-04-17 00:54:09 +02:00
4d4c6aad90 feat: added the Color component to the base components in the ECS 2025-03-21 23:17:16 +01:00
9e16179df3 feat: added Font to get glyphs out of ttf files and make a TextureAtlas with them (right now only latin range of Unicode to not explode the atlas) and started trying to incorporate text rendering in ECS and Renderer2D 2025-03-15 23:17:02 +01:00
ab73b145b1 fix: changed the name of World to Scene (because the name fits better) 2025-03-11 01:23:33 +01:00
4e9e296ba4 fix: completely annihilated matrix and rewrote it with a good orthographic projection matrix finally 2025-03-10 01:39:00 +01:00
4af65ed961 feat: implemented a priority camera system that searches for the Entity with the Camera2D component with the smallest priority 2025-03-08 02:04:50 +01:00
db405bfb2e wip: transitioning to the newer comet_structs and new ComponentStorage through a FlatMap (not the rust implementation) 2025-03-04 23:52:16 +01:00
4ce24b58dd feat: added the beginnings of a ecs based camera system. render_scene_2d crashes miserably right now but theoretically everything *should* be in place for a full adoption 2025-02-26 23:53:52 +01:00
ee3d0bdb9e feat: moved the ECS related functions to the App to remove unnecessary calling of the World struct inside App. 2025-02-23 16:51:31 +01:00
2736d97d03 feat: Added shader loading and swapping as well as beginnings of out of the box noise generation and support for multiple render passes 2024-12-17 01:36:34 +01:00
a3df3f4f17 feat: Added swappability of the renderer and added a Renderer trait to make custom renderers if needed. Also renamed Renderer2D component to Render2D because it is a "render component" and not a renderer (but also name to avoid name clashes) 2024-11-29 01:29:57 +01:00
5a9f632e3a feat: added a camera with orthographic projection and did some work restructuring the comet_app to make the setup system optional. Input handling is moved to the app 2024-11-13 03:33:02 +01:00
780365aeb8 feat: added 2D scene rendering and initialization of the texture atlas 2024-10-28 15:17:59 +01:00
6154c72b0e initial commit 2024-10-26 02:15:26 +02:00