SOAP Dependency Visualizer
The SOAP Dependency Visualizer is SoapKit's advanced dependency mapping and analysis tool. It provides real-time visualization of relationships between SOAP assets, GameObjects, and components throughout your project, helping you understand data flow and optimize your architecture.
Overviewβ
The Dependency Visualizer offers multiple view modes to analyze your SOAP architecture from different perspectives, providing insights into usage patterns, potential bottlenecks, and optimization opportunities.
Access: Window > SoapKit > Dependency Visualizer
Key Featuresβ
- πΊοΈ Interactive Dependency Maps - Visual relationship graphs with real-time updates
- π― Multiple View Modes - GameObject and Asset
- π Advanced Filtering - Filter by asset type, usage patterns, or specific components
- π Usage Analytics - Detailed metrics on asset usage and dependency depth
- π¨ Hotspot Detection - Automatic identification of performance bottlenecks
- π§ Smart Navigation - Click to navigate between assets and scenes
- π Real-time Monitoring - Live updates during Play Mode
- π¨ Visual Indicators - Color-coded nodes showing health and activity
Core Featuresβ
Dependency Mapping Engineβ
The visualizer uses an advanced analysis engine that scans your entire project to build comprehensive dependency maps:
// Automatic detection of dependencies:
SOAPAsset β GameObjects (using the asset)
GameObjects β Components (with SOAP references)  
Components β Other SOAPAssets (cross-references)
Scene β All SOAP usage (scene-wide analysis)
Analysis Capabilities:
- Deep Scanning - Analyzes all scenes, prefabs, and scriptable objects
- Cross-Scene Dependencies - Tracks assets used across multiple scenes
- Component Relationships - Maps which components use which SOAP assets
- Usage Frequency - Tracks how often assets are referenced
- Performance Impact - Identifies high-usage patterns
Visual View Modesβ
1. GameObject-Centric Viewβ
Shows dependencies from the perspective of GameObjects in your scene:
Features:
- Hierarchical Display - Shows parent-child relationships
- Component Breakdown - Lists all SOAP-using components per GameObject
- Asset Usage Indicators - Visual markers for SOAP asset usage
- Scene Context - Organized by scene hierarchy
// Example view structure:
Scene: "GameplayScene"
βββ Player (3 SOAP assets)
β   βββ HealthSystem β IntVariable, BoolGameEvent
β   βββ MovementController β Vector3Variable
βββ UI Canvas (5 SOAP assets)  
β   βββ HealthBar β IntVariable
β   βββ ScoreDisplay β IntVariable, StringVariable
βββ GameManager (2 SOAP assets)
    βββ GameStateController β BoolVariable, UnitGameEvent
2. Asset-Centric Viewβ
Focuses on SOAP assets and shows what uses them:
Features:
- Usage Tree - Hierarchical view of asset dependencies
- Reverse Lookup - Find all consumers of a specific asset
- Orphan Detection - Identify unused assets
- Cross-Reference Analysis - See assets that reference other assets
// Example asset view:
IntVariable: "PlayerHealth"
βββ Used by 4 GameObjects:
β   βββ HealthBar (UI/Canvas/HealthBar) 
β   βββ Player (Characters/Player)
β   βββ EnemyAI (Enemies/BasicEnemy)
β   βββ GameManager (Management/GameManager)
βββ Referenced by Events:
β   βββ BoolGameEvent: "OnPlayerDied"
βββ Performance: 47 updates/sec, 0.2ms avg
3. Graph Viewβ
Interactive node-graph visualization showing system-wide relationships:
Features:
- Interactive Nodes - Drag, zoom, and explore dependency networks
- Color Coding - Visual indicators for different asset types and health status
- Connection Lines - Show direct and indirect relationships
- Cluster Analysis - Groups related assets visually
- Performance Overlays - Heat map showing performance hotspots
Color Scheme:
- π’ Green Nodes - Healthy, well-performing assets
- π‘ Yellow Nodes - Warning conditions (high usage, many listeners)
- π΄ Red Nodes - Performance hotspots requiring attention
- βͺ White Nodes - Unused or low-activity assets
- π΅ Blue Nodes - Critical system assets (high importance)
Advanced Analysis Featuresβ
Hotspot Detectionβ
Automatic identification of performance and design issues:
Performance Hotspots:
π₯ Critical Issues:
β’ "PlayerHealth" - 47 updates/sec, 12 listeners
β’ "GameState" - Used by 23 GameObjects across 4 scenes
β’ "InputEvents" - 156 raises/sec, potential performance impact
β οΈ Design Issues:  
β’ "DebugVariable" - Only used in editor, consider conditional compilation
β’ "TempData" - High update frequency but only 1 listener
β’ Circular dependencies detected in UI system
Optimization Recommendations:
- Suggests asset consolidation opportunities
- Identifies unused assets for cleanup
- Recommends performance optimizations
- Highlights architectural improvements
Usage Analyticsβ
Detailed metrics and statistics about your SOAP architecture:
Project-Wide Statistics:
π Project Overview:
Total SOAP Assets: 47
βββ Variables: 28 (12 Int, 8 Float, 5 Bool, 3 String)
βββ Events: 19 (7 Unit, 6 Bool, 4 Int, 2 Custom)
βββ Custom Types: 0
Scene Distribution:
βββ MainMenu: 12 assets (3 variables, 9 events)
βββ Gameplay: 31 assets (22 variables, 9 events) 
βββ Settings: 8 assets (6 variables, 2 events)
βββ Loading: 4 assets (1 variable, 3 events)
Usage Patterns:
β’ Most Referenced: PlayerHealth (12 references)
β’ Highest Activity: InputHandler (234 events/min)
β’ Least Used: 6 assets with 0 references
Per-Asset Analytics:
- Reference count and usage frequency
- Performance metrics and update rates
- Memory footprint analysis
- Lifecycle tracking (creation, modification, last access)
Filtering and Searchβ
Powerful filtering system to focus on specific aspects:
Filter Categories:
π― Asset Type Filters:
βββ Variables (Bool, Int, Float, String, Vector, Color, etc.)
βββ Events (Unit, Typed, Custom)
βββ Custom ScriptableObjects
βββ Cross-references only
π Usage Filters:
βββ High Usage (10+ references)
βββ Unused Assets (0 references)
βββ Performance Hotspots
βββ Recently Modified
βββ Scene-Specific
β‘ Performance Filters:
βββ High Update Frequency (10+ updates/sec)
βββ Memory Usage (High/Medium/Low)
βββ Listener Count (5+, 10+, 20+)
βββ Error Prone Assets
Search Features:
- Smart Search - Find assets by name, type, or usage pattern
- Regular Expressions - Advanced pattern matching
- Multi-Criteria - Combine multiple filters for precise results
- Saved Searches - Store frequently used filter combinations
Professional Workflowsβ
Architecture Reviewβ
Use the visualizer for comprehensive architecture analysis:
Step 1: Overall Assessment
- Switch to Graph View for system-wide overview
- Enable Performance Overlay to see hotspots
- Check for Circular Dependencies (shown as red connections)
- Review Cluster Density (tightly coupled areas)
Step 2: Asset Optimization
- Switch to Asset-Centric View
- Filter by "Unused Assets" to identify cleanup opportunities
- Check "High Usage" assets for optimization potential
- Review Cross-References for architecture coherence
Step 3: Performance Analysis
- Enable Real-Time Monitoring during Play Mode
- Watch for Dynamic Hotspots that appear during gameplay
- Analyze Update Frequencies for expensive operations
- Check Memory Usage patterns over time
Refactoring Planningβ
Plan large-scale refactoring with dependency insights:
Safe Refactoring Process:
1. Identify Target Asset:
   β Select asset in any view
   β Review all dependencies and references
2. Impact Analysis:
   β Check "Used By" list for affected GameObjects
   β Review cross-references to other assets
   β Analyze performance impact of changes
3. Plan Migration:
   β Identify assets that can be merged
   β Plan new asset structure
   β Check for breaking dependencies
4. Execute with Confidence:
   β Use dependency map to validate changes
   β Monitor real-time updates during refactoring
   β Verify no broken references remain
Team Collaborationβ
Share architecture insights across your development team:
Documentation Features:
- Export Dependency Maps - Save visualizations as images
- Generate Reports - Automated architecture analysis reports
- Share Configurations - Export filter settings for team consistency
- Performance Baselines - Track architecture health over time
Configuration and Customizationβ
Display Settingsβ
Customize the visualizer for your workflow:
// Visual Preferences:
Node Size: Small/Medium/Large
Connection Style: Curved/Straight/Organic
Color Scheme: Default/High Contrast/Colorblind Friendly
Animation Speed: Slow/Medium/Fast/Disabled
// Information Density:
Show Asset Types: Yes/No
Show Reference Counts: Yes/No
Show Performance Metrics: Yes/No
Show Scene Information: Yes/No
Performance Settingsβ
Configure analysis depth and update frequency:
// Analysis Settings:
Deep Scan Enabled: Yes/No (includes inactive GameObjects)
Cross-Scene Analysis: Yes/No (performance impact)
Real-Time Updates: Yes/No (Play Mode only)
Update Frequency: 0.5s/1s/2s/5s
// Memory Settings:
Cache Dependency Data: Yes/No
Max Cached Scenes: 5/10/20/Unlimited
Auto-Cleanup Unused: Yes/No
Integration with Other Toolsβ
Debug Window Integrationβ
Seamless integration with the main SOAP Debug Window:
// Cross-tool navigation:
Dependency Visualizer β Debug Window:
βββ Right-click asset β "Debug in Console"
βββ Double-click node β "Focus in Debug Window"
βββ Performance hotspot β "Analyze Performance"
Debug Window β Dependency Visualizer:
βββ Asset context menu β "Show Dependencies"
βββ Performance alert β "View in Graph"
βββ Usage report β "Visualize Usage"
Performance Analyzer Connectionβ
Direct integration with performance monitoring:
- Live Performance Data - Real-time metrics overlay on dependency graph
- Hotspot Correlation - Performance issues highlighted in dependency view
- Optimization Tracking - Monitor improvements after architecture changes
Best Practicesβ
Regular Architecture Reviewsβ
Monthly Architecture Health Check:
- Run full project scan in Graph View
- Check for new Performance Hotspots
- Identify and clean up Unused Assets
- Review Dependency Depth for complexity management
- Document architectural decisions and changes
Performance Monitoringβ
Continuous Performance Awareness:
// Set up monitoring alerts:
Configure hotspot detection thresholds:
βββ Update Frequency > 30/sec β Warning
βββ Listener Count > 15 β Review Required  
βββ Memory Usage > 50MB β Investigation Needed
βββ Circular Dependencies β Immediate Fix
// Regular checkpoints:
βββ Before major releases
βββ After significant feature additions
βββ During performance optimization phases
βββ When team reports architectural confusion
Team Onboardingβ
New Developer Workflow:
- Architecture Overview - Show Graph View of main systems
- Key Assets Tour - Highlight critical variables and events
- Hotspot Awareness - Point out performance-sensitive areas
- Navigation Training - Teach efficient tool usage
- Best Practices - Share team conventions and standards
Troubleshootingβ
Common Issuesβ
Q: "Dependencies not showing correctly" A: Refresh the analysis:
- Click "π Refresh Analysis" in toolbar
- Check if assets are properly saved
- Verify SOAP assets are in correct folders
- Use "Deep Scan" for thorough analysis
Q: "Performance is slow with large projects" A: Optimize analysis settings:
- Disable "Real-Time Updates" when not needed
- Use Scene-Specific Filtering to reduce scope
- Increase Update Frequency to 2-5 seconds
- Enable Auto-Cleanup Unused to reduce memory usage
Q: "Graph view is cluttered and hard to read" A: Improve visualization:
- Use Smart Filtering to show only relevant assets
- Adjust Node Size to Medium or Small
- Enable Cluster Analysis to group related assets
- Use Performance Overlay to focus on important nodes
Debug Informationβ
Access detailed debug information for troubleshooting:
// Debug Panel Information:
Analysis Statistics:
βββ Total Assets Scanned: 47
βββ Dependencies Found: 156  
βββ Scenes Analyzed: 4
βββ Analysis Time: 0.3s
βββ Memory Usage: 12.4 MB
Cache Information:
βββ Cached Dependencies: 156
βββ Cache Hit Rate: 94.2%
βββ Last Full Scan: 2 minutes ago
βββ Next Scheduled Scan: In 28 minutes
Error Log:
βββ No errors detected β
The SOAP Dependency Visualizer transforms complex architecture understanding into intuitive visual insights. Master this tool to maintain clean, performant, and well-structured SOAP architectures that scale with your project's growth! πΊοΈβ¨
Next Stepsβ
- Performance Analyzer - Monitor and optimize SOAP performance
- Debug Window - Debug your dependencies in real-time
- Best Practices - Architecture guidelines and patterns