Conversation
…ansform class feat(collision): enhance collision detection with world position adjustments feat(menu): add enable/disable functionality for menu items based on scene availability feat(gui): introduce GUITexture class for rendering textures with color support
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces significant improvements to the handling of game object hierarchies, scene management, and rendering logic in the core engine. The main focus is on enabling recursive operations on game object trees, improving the accuracy of object search and manipulation, and enhancing scene and rendering behavior.
Hierarchy traversal and recursive operations:
find,findWithTag,findAll,findAllWithTag) now search recursively through the entire object hierarchy, not just root objects, by introducingfindFirstInHierarchyandcollectHierarchyMatcheshelper methods. This ensures more accurate and comprehensive searches for objects and tags. [1] [2] [3] [4] [5]getChildrenmethod inGameObjectprovides direct access to child objects, enabling recursive traversal and manipulation of object trees.Recursive lifecycle and rendering methods:
start,stop,resume,suspend,fixedUpdate,update) and rendering methods (render,renderAt,erase,eraseAt) are now applied recursively to all child game objects, ensuring that changes propagate throughout the hierarchy. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12]broadcastmethod now also propagates method calls recursively to all children, ensuring consistent behavior across the hierarchy.Scene management and root object handling:
AbstractSceneclass now tracks its managingSceneManagerinstance and improves root object registration by only adding unparented objects to the root list, preventing duplicates and maintaining a clean hierarchy. [1] [2] [3]Rendering improvements:
Environment map loading refactor:
AbstractScenefor clarity and correctness, ensuring robust file loading and error handling. [1] [2]These changes collectively provide a more robust, flexible, and accurate system for managing game objects and scenes, especially in complex hierarchies.