Skip to content

Conversation

@Azzinoth
Copy link
Owner

@Azzinoth Azzinoth commented Mar 6, 2025

No description provided.

Azzinoth added 30 commits June 2, 2024 21:22
…s for a clearer project structure; Moved the scene graph and content browser functionality into separate singleton classes for better separation of responsibilities; Added a draft of the new scene graph interface.
…endering code to a separate file; Rendering the log window using TextEditor is taking too much time (up to several ms) even with a small amount of text, disabling SetColorizerEnable helps but still takes too long for the log, so switched to ImGui::InputTextMultiline.
… will not be updated if there is nothing to change; Added a test function void TransformUpdate(FENaiveSceneEntity* SubTreeRoot) which will be deleted later.
…; Moved editor inspector-related code to a separate file.
… GEOMETRY class as it is a general geometry-related function; Attempted to make entity scaling less aggressive in some edge cases; Moved the temporary TransformUpdate function to the engine; Reworked the editor gizmo to have a parent and work with all gizmo entities through it.
…ne nodes with dummy entities for transformation control through the new scene graph; The visibility of entities is now saved along with other information.
…Ver0 function for the old project file format.
…d conversion from old FEPrefab during scene load; Improved FEEditorInspectorWindow::ShowTransformConfiguration to display world transformations alongside local ones.
…tructure to the components view in the inspector window; Introduced a new 'Add Component' button to add components to an entity, this is the first iteration of this functionality.
…mera system; Initial attempts to improve editor scene management.
…ine; Editor changes to enable working with multiple scenes; Rewrote selection system, halo effect system, and gizmos to support multiple scenes; FEEditorPreviewManager now uses a custom scene to create preview thumbnails; Project loading/saving is still not ready, but many changes have been made to prepare for fixing it.
…; GizmoManager now works with FETransformComponent more efficiently; Fixed the issue with GyzmosSettingsWindow not showing up and the problem with switching gizmo states; All editor functions and classes now use FETransformSystem::DuplicateTransformComponent.
…indowTarget to work with multiple scene windows; Fixed memory leak in FEEditorContentBrowserWindow::UpdateDirectoryDragAndDropTargets().
…or scene windows in the editor; Deleted old code related to the previous non-node editor for materials; Added a material preview in the material editor; Added FEPrefabSceneEditorWindow as a child class of FEEditorSceneWindow, including additional buttons needed for working with prefabs; Renamed PrefabEditorWindow files to FEPrefabEditorManager; Improved FEImGuiWindow functionality; Deleted FEEditorSceneData and moved all its functionality to FEPrefabSceneEditorWindow; Introduced EDITOR_SCENE_TAG to differentiate between user entities and engine editor-introduced ones.
…oltip; Fixed an issue where users could add a prefab to another prefab scene; It is now possible to draw scene AABB; Updated DragAndDropManager and DragAndDropTarget to use std::function for callbacks instead of raw function pointers; Reintroduced prefab thumbnail creation via scene rendering; First draft of proper prefab selection rendering.
…o RESOURCE_MANAGER.SetTag(_____, EDITOR_RESOURCE_TAG); Resource tags will now be displayed in the content browser; EDITOR_SCENE_TAG has been replaced by using resource tags instead of entity tag components; Improved code for HaloEffect rendering and rendering for identifying selected entities; Introduced FEProjectManager::CreateNewProject that will properly create a new scene and save it, instead of just saving the text of a pre-created scene save file; FEProject::SaveScene and FEProject::LoadScene were renamed to SaveProject and LoadProject, respectively; The loading and saving of projects were completely rewritten to fully support the new ECS and multiple scenes.
…ces were showing up in the pop-up for choosing textures, meshes, and materials; Deleted the FEEditorInternalResources class as it is no longer needed; Implemented a component delete interface in the inspector window; Deleted deprecated FEObject types; Reverted to static linking.
…e supports more advanced CMake project generation; CMake now supports engine as a DLL to facilitate native script system; Updated singleton usage to align with the new singleton system in the engine; Updated to use the new FEScene flag system; Inspector window now exposes extensive functionality for working with FENativeScriptComponent; Reimplemented entity rename and delete functionality to work with the updated engine; Updated scene graph tree rendering to make it more visually appealing; Editor camera is now added for each opened project to distinguish between user-defined cameras and the editor camera; FEDearImguiWrapper was updated to better support DLL mode; Added a draft of FEEditorScriptingSystem to manage the creation of project native script modules through monitoring user-defined scripts in Visual Studio project; Editor now supports game mode more appropriately, with game mode scenes decoupled from original scenes, and scripts running differently based on the scene type.
…rors if the selected entity is deleted through scripts or other non-editor changes; The editor scripting system remains in a draft state; Fixed issues that prevented correct game mode creation when the prefab window was active; Extended functionality of FEPrefabEditorManager; The inspector window now supports a vast array of additional script variable types and std::vector of script variables.
…ojectManager, and FENativeScriptProject, which were placed in the ProjectManager folder; Fixed several old issues introduced at the beginning of the transition to ECS; Removed the bMain flag from FEEditorSceneWindow, as it is no longer needed; Added FEPrefabEditorManager::GetPrefabFromEditorWindow; Extended FEEditor functionality related to the EditorScene; Fixed FEEditorPreviewManager::CreateGameModelPreview(const FEGameModel* GameModel, FETexture** ResultingTexture); Added FENativeScriptProject to manage the creation and recreation of Visual Studio projects for user native scripts; Changed the FEProject save process to use separate files for resources.txt (formerly scene.txt) and the new project.txt, which now includes editor camera information and other project-related data; Added multiple CMake files to ensure the correct build process for user native scripts; Added temporary buttons to test the native script system; The current implementation of the native script system is still very raw and lacks many features to be considered production-ready, but this commit has moved it significantly closer to that goal.
…tionality is required for proper static linking integration of native scripts; FENativeScriptModules will now be saved as resources along with the project; On project load, any missing VIRTUAL_FILE_SYSTEM resources will be added, including private engine resources; Content browser now has an option to display private engine resources; Added scene, asset package, and native script module as resource types in the content browser; Included numerous icons for use in the content browser; Fixed logging in VFS, which now supports the new resource types; Added several helpful functions to VFS; Removed temporary script testing code from main.cpp.
… set a scene as the starting scene directly in the content browser; Added TERRAIN_SYSTEM_RESOURCE_TAG to hidden tags in the content browser; Updated system to handle increased complexity due to the interaction between editor cameras and the usual main cameras; Introduced FEProjectBuildSystem, which specializes in building the project as a final executable along with resources; Moved much of the project saving/loading functionality from FEProject to RESOURCE_MANAGER to ensure unified code in the built game; The StartingScene will now be saved within the project; Some native script project template files have been moved to the engine.
…ctBuildSystem to the engine; Updated BuildSystem/CMakeLists_Template to exclude FENativeScriptConnector files, as the engine will include them by default in static link mode; Editor now partially supports static linkage compilation.
… uniforms; Fixed camera issues in the material editor window.
…s; Renamed variables to align with overall naming conventions.
…as window; Added a camera preview to camera components in the Inspector window to better inform users of what the game camera will render.
…or editor cameras; Added an interface for adjusting the rendering scale in the Camera component; Small updates to README; Editor cameras now have an exposed Transform component for user adjustments.
…ME statements, restated unresolved ones more clearly; Added new TODO items; Fixed incorrect behavior in SelectFEObjectPopUp when selecting an object.
@Azzinoth Azzinoth merged commit daff1b5 into master Mar 6, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants