Commit graph

24 commits

Author SHA1 Message Date
reo
341d531db3 Refactor rendering process in main.rs and remove obsolete render_world function from Gui 2025-07-21 22:56:17 +03:00
reo
a3d3f641cd Improve abstraction of the engine
- Improved camera controls
- Introduce new convenience function ecsr.load_mesh_from_gltf
- Abstract out the glium stuff to allow for more backends in the future.
  We're still tied to winit though as it can be used with any of the
  major graphics libraries in the Rust ecosystem.
2025-07-19 00:15:21 +03:00
reo
97195fbd05 Add raidillon_input and FPSCameraController 2025-07-18 12:09:24 +03:00
reo
d0440f3da3 Major Refactor: separate project into multiple crates 2025-07-17 23:19:46 +03:00
reo
f943e4c945 Add skybox rendering support 2025-07-15 01:27:50 +03:00
reo
f6a9d18c5c Refactor main.rs to use the new rendering features 2025-07-13 20:08:16 +03:00
reo
91ce772e58 Add model attribution to README 2025-07-13 20:07:58 +03:00
reo
a555f7f61e Add new tree and plane models 2025-07-13 20:07:43 +03:00
reo
0af4622525 Add texture support to the renderer
- Refactor to use the new model::Model struct
- Implement blinn-phong shading
- Add texture support for shaders
2025-07-13 20:03:43 +03:00
reo
67f5913907 Refactor ecs module to use the new structs
The ecs module now uses the new model::Model struct instead of the
previous Mesh struct.
2025-07-13 19:57:16 +03:00
reo
0ecdb2cb6f Move gltf_loader to a separate module, new GLTF features
- glTF loader now supports textures. I was able to successfully load
  multiple blender models with different texturing methods.
- Added Material to represent textures and material properties.
2025-07-13 19:54:39 +03:00
reo
3db5237909 Add KHR_texture_transform and utils features to the gltf package 2025-07-13 18:46:21 +03:00
reo
876d624d2d Utilize the new UI module in main.rs
Added simple transformation inputs for testing
2025-07-05 20:45:25 +03:00
reo
498989fb1e Add module ui.rs for the imgui integration 2025-07-05 20:44:47 +03:00
reo
76dabf2e63 Add function render_into to the renderer
To be used for the Dear ImGui integration
2025-07-05 20:44:20 +03:00
reo
111c42a746 Add function "render_into" to the ECS system
This is needed for the imgui integration
2025-07-05 20:43:18 +03:00
reo
a17a6016b8 Move shaders to separate files 2025-07-05 20:42:55 +03:00
reo
5df8738711 Move model files to resources/models 2025-07-05 20:42:35 +03:00
reo
5358fea0f9 Add new dependencies, downgrade glium
Added imgui and its renderer dependencies.
Downgraded glium to 0.35 to make it work with imgui-glium-renderer
2025-07-05 20:39:35 +03:00
reo
7e4168eee5 Add ECSRenderer for improved integration of rendering and ECS
- Introduced ECSRenderer struct to manage the connection between the renderer and the ECS.
- Implemented methods for spawning and despawning meshes within the ECS.
- Updated main function to utilize ECSRenderer for rendering and object management.
- Added a new Time module to handle frame timing and updates.
2025-07-01 23:25:57 +03:00
reo
cdbac0d4ab Improve ECS
Use query_one_mut instead of query_mut for single objects
2025-06-30 23:29:41 +03:00
reo
b793bec63a Update shaders to do light processing in the fragment shaders 2025-06-30 11:04:54 +03:00
reo
95070f854c Implement a basic engine with separate modules 2025-06-29 23:18:39 +03:00
reo
0135974d08 First Commit 2025-06-28 14:20:46 +03:00