Commit Graph

50 Commits

Author SHA1 Message Date
18ab1cdff9 configs 2025-08-23 11:45:42 -05:00
28cbb57799 Merge remote-tracking branch 'origin/main' 2025-08-22 15:02:41 -05:00
dfdb6ebfc6 Merge branch 'LAPTOP-DEV' 2025-08-22 15:01:41 -05:00
c670517ab9 Fixed Renderer and added Light Components 2025-08-22 15:01:06 -05:00
9f29fe5c08 Fixed ECS and working on debug renderer 2025-08-22 14:09:29 -05:00
2a6c504978 nothin 2025-07-29 18:21:25 -05:00
2c8f863706 Merge branch 'PC-DEV' 2025-07-21 20:53:42 -05:00
fab3ae8405 Clion cfg 2025-07-21 20:53:33 -05:00
25281b6fc4 Merge branch 'main' into PC-DEV 2025-07-21 20:53:17 -05:00
13e69ac86f Merge branch 'LAPTOP-DEV' 2025-07-14 00:37:32 -05:00
f34631a052 cleanup 2025-07-14 00:36:22 -05:00
a2106817f6 Improves asset management and scanning
Enhances asset manager to improve performance and stability:

- Fixes resource scanning by using a snapshot to avoid race conditions.
- Adds more logging, especially for asset loading failures and filesystem errors.
- Improves performance by counting textures before the scan loop.
- Fixes an issue where namespace definitions were not placed on the same line.
- Switches case block braces to next line
2025-07-14 00:35:10 -05:00
fd048c69f9 Merge branch 'PC-DEV' 2025-07-13 13:46:28 -05:00
fd956a64d6 LIFO shutdown loop 2025-07-13 13:40:53 -05:00
OusmBlueNinja
cf60f9e8db Cleans up SceneExplorer drag drop text
Removes unnecessary "Move:" prefix from drag and drop
text in the SceneExplorer. This simplifies the displayed
text and improves clarity during drag and drop operations.
2025-06-09 16:59:42 -05:00
OusmBlueNinja
f0bf4a210b Adds transform component to scene objects
Adds a transform component to game objects, allowing for position, rotation, and scale manipulation.
Implements serialization and deserialization for the transform component using YAML.
Updates game object to manage components and hierarchy with parent-child relationships.
The new component enables scene objects to be positioned, rotated, and scaled within the scene.
2025-06-07 12:00:13 -05:00
243da44be2 Update README.md 2025-06-03 21:20:15 +00:00
OusmBlueNinja
8232b19666 Adds basic editor window classes
Adds the initial structure for the InspectorWindow and
SceneExplorer editor windows, providing a foundation for
implementing editor functionality.
Also adds file browser and other editor windows
2025-06-03 16:09:00 -05:00
OusmBlueNinja
19d1b9df55 Adds initial project setup and README
Adds a basic README file with project information, features, and a project layout example.

Adds a dictionary configuration file to specify project-specific words.
2025-06-02 13:15:09 -05:00
OusmBlueNinja
626e8b2b71 Modernizes root object removal
Uses `std::ranges::find_if` for searching in `removeRootObject`, modernizing the code.

Removes an unnecessary comment in CMakeLists.txt.

Simplifies a comment in the Scene.h header file.
2025-06-02 13:00:36 -05:00
OusmBlueNinja
656f1c070f Adds basic scene management
Implements a basic scene management system with GameObject and Component structure.

Adds initial support for TagComponent serialization.

Includes Scene class in Core and an AssetManager profiling scope.
2025-05-27 13:32:20 -05:00
OusmBlueNinja
19388ba003 Starts asset scanning on application start
Ensures that the asset scanner begins automatically when the application starts, so that the asset database is populated from the beginning.
2025-05-22 20:48:17 -05:00
OusmBlueNinja
9641de9b2c Improves asset loading and scene management
Adds scene management system with GameObjects and Components.

Improves asset loading by scanning assets in a background thread and queuing textures for upload. Also displays a progress bar in the file browser for texture loading.

Adds basic component system with TagComponent to identify GameObjects
by a user defined name.
2025-05-22 11:51:28 -05:00
OusmBlueNinja
3ecfa15e4a Uses smart pointers for editor windows
Replaces raw pointers with smart pointers for managing editor windows.

This change improves memory management by ensuring proper deallocation of the Viewport and FileBrowser objects when the Editor shuts down, preventing potential memory leaks.
2025-05-22 10:14:46 -05:00
OusmBlueNinja
60d0154182 Updates editor version to 0.2.6
Reflects the latest release number for the editor.
2025-05-22 09:28:22 -05:00
OusmBlueNinja
d107be98d4 Improves asset loading and shader management
Improves asset management by adding a shutdown procedure that safely terminates the asset scanning thread. This prevents crashes and ensures a clean exit.

Enhances shader management by introducing shader naming and improved error logging. This makes debugging easier. Also renames the sprite shader.

Fixes a minor bug related to sprite drawing position.

Adds Git mappings for submodules.
2025-05-22 09:25:29 -05:00
OusmBlueNinja
f7e0882597 Improves renderer and adds shader support
Adds shader class to core and modifies the renderer to use it,
while also adding profiling macros and fixing resize issues.
The changes ensure the render target is resized only when the
requested size is different from the current size and also clears
the screen to a dark gray color.
2025-05-21 22:05:10 -05:00
OusmBlueNinja
4194764d7a Started On Renderer 2025-05-21 21:55:54 -05:00
OusmBlueNinja
375af6829c Fixed Crash By Adding Lock 2025-05-21 21:31:47 -05:00
OusmBlueNinja
1a928159e5 Chore: Bump Editor Version 2025-05-21 16:40:01 -05:00
OusmBlueNinja
c177c8b9ea Improves asset loading and file browsing
Adds background asset scanning and loading to improve editor responsiveness.

Updates the file browser with grid and list views, filtering, and callbacks for file selection.

Fixes an issue where the asset manager would block the main thread during asset loading.
2025-05-21 16:38:18 -05:00
OusmBlueNinja
7cee708801 Refactors asset loading for textures
Removes Assimp dependency.

Changes the asset loading process to use a queue system for texture uploads to OpenGL, which improves performance by offloading the texture loading to the main thread.

The asset manager now directly loads texture data using stb_image and uploads it to the GPU in the main thread, eliminating the need for Assimp.
2025-05-21 13:59:27 -05:00
OusmBlueNinja
86c90cbf8d Chore: Bumped Versions 2025-05-21 12:34:23 -05:00
OusmBlueNinja
91f8eff00d Started in File Broswe Window 2025-05-21 11:49:17 -05:00
OusmBlueNinja
4e2f6b8cfd "Functonal" asset manager 2025-05-21 11:46:17 -05:00
OusmBlueNinja
6225c07dbd Started On Asset Manager 2025-05-21 11:34:23 -05:00
OusmBlueNinja
f298c48564 Fixed Spacing of Editor 2025-05-21 11:07:23 -05:00
OusmBlueNinja
5758f841ed Added viewport 2025-05-21 10:16:46 -05:00
OusmBlueNinja
6074fdc492 Added Demmy Layer for testing 2025-05-21 09:25:43 -05:00
OusmBlueNinja
f6e80b5ad0 Added Layer Based Dynamic Window Titles 2025-05-21 09:21:50 -05:00
OusmBlueNinja
623aa4694b Updated Color Scemes 2025-05-20 21:45:27 -05:00
OusmBlueNinja
36b821eb64 Fixed Logger and Brought back Verbose 2025-05-20 21:42:18 -05:00
OusmBlueNinja
5ad82a1368 updated versioning 2025-05-19 11:25:41 -05:00
OusmBlueNinja
67f7d45db9 Update main.cpp 2025-05-18 13:33:24 -05:00
OusmBlueNinja
4f5a969893 Update README.md 2025-05-18 13:33:05 -05:00
OusmBlueNinja
9c5102624c Update README.md 2025-05-18 13:32:39 -05:00
OusmBlueNinja
16a70b888d Set Up Base 2025-05-18 13:29:55 -05:00
OusmBlueNinja
5278c9fb43 Used Template 2025-05-18 12:42:48 -05:00
OusmBlueNinja
9598aded5b Added Logos 2025-05-18 12:26:46 -05:00
e8de05e3c4 Initial commit 2025-05-18 17:24:00 +00:00