452 Commits

Author SHA1 Message Date
9aaa2786b6 Merge branch 'Shipping-Build-Overhaul' 2025-11-14 12:59:53 +01:00
e3bb138cb2 Patch - Git LFS More file type - V14.10.1 2025-11-14 12:58:23 +01:00
040d919b69 Minor - Optimise l'accès aux ressources D3D - V14.10.0
Refactorise l'accès aux interfaces Direct3D pour plus de clarté et d'efficacité, en utilisant des accesseurs `const` et en déplaçant certaines fonctions directement dans l'en-tête.

Cela simplifie l'utilisation des ressources D3D et améliore la lisibilité du code.
2025-11-02 01:22:50 +01:00
1a92ac64d7 Patch - Désactive les logs en build shipping - V
Désactive complètement les logs en build shipping
pour améliorer les performances et réduire la taille
du binaire final.
2025-10-31 19:36:48 +01:00
145a1b323f Merge branch 'ImGui-Perf-Fix' 2025-10-24 17:48:22 +02:00
2e33adf4a9 Minor - Améliore la gestion des entités ImGui - V14.9.0
Optimizes entity management in ImGui by deferring updates to the entity list until necessary.

Changes include:
- Sets the entity list as dirty upon adding or deleting entities to ensure the list is only updated when needed
- Changes the type of entity ID stored in CachedEntity
- Adjusts ImGui window size
2025-10-24 17:47:54 +02:00
c67a805bd7 Minor - Améliore la gestion des entités ImGui - V14.8.0
Optimizes entity list updates in the ImGui interface by caching entity names and IDs.

This reduces unnecessary string operations during rendering and improves performance, especially when dealing with a large number of entities.

The initial ImGui window size has also been reduced for performance reasons.
2025-10-24 12:00:26 +02:00
cb234f64f0 Patch - Config file change - V14.7.1
Config file change
2025-10-16 18:49:09 +02:00
5ab98c9a0a Minor - Ajoute le culling par la lumière du soleil - V14.7.0
Implémente un système de culling basé sur la position de la lumière du soleil pour améliorer les performances du rendu des ombres.

Crée un thread dédié au culling des objets non visibles par la lumière du soleil.
Ajoute une structure de frustum spécifique au culling par la lumière du soleil.
Modifie le RenderComponent pour suivre si un objet est visible par la lumière du soleil.
2025-10-14 18:45:57 +02:00
37bba7866c Patch - Fix White Shadow Map - V14.6.2
Exclut le skysphere du rendu de la shadowmap.
Supprime le code inutile de la caméra principale.
2025-10-14 15:18:21 +02:00
ebbbd181e3 Patch - Simplifie la gestion des erreurs - V14.6.1
Remplace les blocs if/else par une macro R_LOG_ERROR pour une gestion plus concise et uniforme des erreurs lors de l'initialisation des objets.

Améliore la lisibilité du code et réduit la duplication.
2025-10-14 14:12:34 +02:00
ba7d0ca27e Minor - Implémente le rendu des ombres - V14.6.0
Ajoute la possibilité de rendre une shadow map pour les objets de la scène.
Supprime la dépendance de la texture du depth shader et ajoute une option pour caster les ombres sur les RenderComponents.
Modifie la taille de la fenêtre dans l'imgui.ini
2025-10-14 13:33:30 +02:00
13fc189ee8 Patch - Adjusts UI and fixes a stats update call. - V14.5.36
Fixes an issue where the stats update function was not being called correctly, ensuring accurate and up-to-date information is displayed.
2025-10-13 11:26:36 +02:00
af5473f6e3 Patch - Uses degree conversion macro - V14.5.35
Replaces direct calculations of radians to degrees with a macro.

This change centralizes the conversion factor, enhancing code
readability and maintainability. It also removes a duplicate
definition of the same macro.
2025-10-10 18:13:49 +02:00
526b38eb4f Patch - Fixes object list item labeling issue - V14.5.34
Avoids duplicated ImGui labels in the object list by adding the entity ID to the item label.

Also, corrects ImGui layout issues, preventing window overlap.
2025-10-10 17:53:49 +02:00
295b7354d9 Patch - Improves camera controls and movement. - V14.5.33
Refactors camera input handling for smoother and more intuitive control.

This change introduces a dedicated CameraInput structure and updates the
camera class to use it for movement and rotation based on user input.
It removes the old position class camera related logic and integrates mouse
delta for precise rotation control and scroll wheel for speed adjustments.

Updates ImGui layout to reflect the new size for the docked space.
2025-10-10 17:16:10 +02:00
b31b242775 Patch - Adds camera input handling - V14.5.32
Adds a system for managing camera input using a dedicated
CameraInput struct and updates the camera class to process
these inputs. This allows for more flexible and controlled
camera movement.
2025-10-10 15:31:39 +02:00
7c6562719f Patch - Adds utility and improves error handling - V14.5.31
Adds a utility function to retrieve key states for a given container of keys, enhancing input processing capabilities.

Improves error handling by adding more logging for render failures, giving the development team better insights into potential issues and aiding debugging efforts.
2025-10-10 12:46:13 +02:00
00339aa6c2 Patch - Improves code and UI for better engine stability - V14.5.30
Addresses minor issues across the engine to improve stability and UI.

- Updates ImGui window size for better rendering
- Adds macro for boolean returns (R_TRUE and R_FALSE)
- Adds missing includes and removes unused code
- Updates shader code to use the new macros and improve readability
2025-10-10 00:32:19 +02:00
2b8e222d7c Patch - Refactors logging and adds macro header - V14.5.29
This commit refactors the logging system by replacing direct calls to the Logger class with macros. This improves code readability and maintainability by providing a consistent and concise way to log messages throughout the engine.

The 'macro.h' header file is added and included in multiple system classes to define these logging macros, centralizing logging functionality.

Additionally, error handling is improved in imguiManager::IncrementBuildVersionInConfig by logging specific errors during file operations.
2025-10-09 18:47:33 +02:00
7c5a6435bb Patch - Adds macro for simplified logging - V14.5.28
Introduces a macro to streamline logging, enhancing code readability and maintainability.

The new macro replaces direct Logger calls with more concise and expressive `LOG_INFO`, `LOG_ERROR` etc. calls, reducing boilerplate code and improving consistency in logging practices across the engine.
2025-10-09 16:58:48 +02:00
fe77100612 Patch - Updates build version patch number - V14.5.27
Increments the build version patch number to reflect the latest changes.

This ensures accurate version tracking for the engine.
2025-10-08 19:50:39 +02:00
985e4de77d Refactors CI notification to use JSON payload
Updates the CI notification process to send a JSON payload to the notification service, instead of constructing the JSON string directly in the Jenkinsfile. This improves readability, maintainability, and simplifies data handling for both success and failure scenarios. It also allows for easier extension of the data being sent in the future.
2025-10-08 19:43:58 +02:00
b1ba23f9c0 Updates CI notification in Jenkinsfile
Updates the Jenkinsfile to ensure proper JSON formatting for the
list of artifact URLs passed to the CI notification service.
This ensures that the recipient correctly interprets the download links.
2025-10-08 18:56:15 +02:00
884db4877e Updates parameter descriptions and JSON construction
Updates descriptions of Jenkins parameters for clarity.

Refactors the construction of the JSON string containing URLs to
improve readability.
2025-10-08 18:51:12 +02:00
38569b18a7 Jenkins Test #18 2025-10-08 18:45:26 +02:00
aa8e5c0782 Jenkins Test #17 2025-10-08 18:41:45 +02:00
6680e4689b Jenkins Test #16 2025-10-08 18:30:36 +02:00
a2dc31f49c Jenkins Test #15 2025-10-08 18:23:09 +02:00
fc9a4bdc47 Jenkins Test #14 2025-10-08 18:17:33 +02:00
4922305921 Jenkins Test #13 2025-10-08 18:12:35 +02:00
14c07f8750 Jenkins Test #12 2025-10-08 18:10:28 +02:00
2f5a970a4e Jenkins Test #11 2025-10-08 18:06:27 +02:00
6667a57585 Jenkins Test #10 2025-10-08 18:02:19 +02:00
9da4a5e852 Jenkins Test #9 2025-10-08 18:00:12 +02:00
871d7c8265 Jenkins Test #8 2025-10-08 17:53:48 +02:00
3352f2afa7 Jenkins Test #7 2025-10-08 17:28:14 +02:00
715955ef6a Jenkins Test #6 2025-10-08 17:16:35 +02:00
90a43254f3 Jenkins Test #5 2025-10-08 17:11:48 +02:00
f1db564fb3 Jenkins Test #4 2025-10-08 17:09:23 +02:00
97b5483cc9 Test Jenkins #3 2025-10-08 16:32:16 +02:00
ad056fa2a8 Test Jenkins #2 2025-10-08 16:29:03 +02:00
1bdcd5cd1b Jenkins Test 2025-10-08 16:26:27 +02:00
467b357620 Patch - Refactors build and package stages for parallelism - V14.5.5
Improves build and package processes by introducing parallel execution for debug and release configurations.

This change reduces overall execution time by building and packaging debug and release versions concurrently.
2025-10-08 16:17:15 +02:00
0368276fbf Patch - Updates build version to 14.5.4 - V14.5.4
Updates the major, minor, and patch version numbers.

This reflects the latest iteration of the software, keeping the version information current.
2025-10-08 15:38:57 +02:00
9515b18d1e Patch - Packages builds and updates archiving - V14.5.3
Packages debug and release builds into ZIP archives.

Updates artifact archiving to include only the ZIP packages,
rather than individual executables and DLLs. This simplifies
the artifact management process and reduces storage space.
2025-10-08 15:01:52 +02:00
d131c78a59 Actualiser Jenkinsfile 2025-10-08 12:51:05 +00:00
56389b5dee Ajouter Jenkinsfile 2025-10-08 12:46:49 +00:00
389cde97c2 Minor - Adds target FPS control to engine settings - V14.5.0
Adds functionality to control the target FPS of the engine via the ImGui settings panel.

This includes:
- Adding target FPS variables and accessors in the application class.
- Adding a set_target_fps function to the fps_limiter class.
- Updating the ImGui engine settings panel to include a target FPS setting.
- Modifying the main loop to make use of the fps limiter and the engine target FPS.
2025-10-01 16:58:37 +02:00
0e41fb0ec9 Patch - Start Implementing FPS Limiter - V14.4.1
Adds an FPS limiter to control the framerate, preventing excessive resource usage and providing a more consistent experience.

Removes the standalone FPS limiter from the imguiManager and integrates it into the system class.
2025-10-01 16:21:23 +02:00