Background
There is currently an architectural inconsistency regarding how sub-features are registered across different feature modules using VContainer.
Two conflicting patterns are currently competing in the codebase:
- Mono-Installer Pattern: A single main feature installer handles all sub-feature VContainer registrations internally.
- Multi-Installer Pattern: Each sub-feature has its own individual installer component that is physically attached to a GameObject within the scene.
Goal
Consolidate these approaches, establish a single, unified architectural schema for feature/sub-feature composition, and consistently apply it across the entire codebase to eliminate scene clutter and improve dependency maintainability.
Solution (Updated)
Just create an installer for the sub-feature, but no need to call it in the main feature installer. Instead, place the sub-feature installer in the feature installers hierarchy, which will get picked up recursively. Refer to stat display installers as an example.
Background
There is currently an architectural inconsistency regarding how sub-features are registered across different feature modules using VContainer.
Two conflicting patterns are currently competing in the codebase:
Goal
Consolidate these approaches, establish a single, unified architectural schema for feature/sub-feature composition, and consistently apply it across the entire codebase to eliminate scene clutter and improve dependency maintainability.
Solution (Updated)
Just create an installer for the sub-feature, but no need to call it in the main feature installer. Instead, place the sub-feature installer in the feature installers hierarchy, which will get picked up recursively. Refer to stat display installers as an example.