Shader Memory Atlas is an advanced GPU memory profiling tool designed for Unreal Engine 4.27, aimed at optimizing memory usage by providing real-time tracking, visualization, and analysis capabilities..
Key Functionality
GPU Memory Tracking:
Monitors VRAM usage for textures, materials, shaders, and meshes.
Visualization with Heatmaps:
Uses color-coded representations to indicate memory costs of actors, facilitating quick identification of high usage areas.
Performance Analysis:
Helps identify optimization opportunities to enhance game performance.
Report Generation:
Exports data into CSV files for detailed external analysis.
Platform Support:
Compatible with Windows and Android platforms.
Complete Plugin Package
Directory Structure:
Contains essential files, including plugin descriptors, source code, documentation, and building instructions.
Approx. 4,000 lines of production-ready C++ code.
Core Features
1. VRAM Tracking System
Monitors real-time GPU memory usage across different asset types.
API methods for accessing memory stats.
2. Heatmap Visualization [ in Progress ]
Provides a color-coded heatmap for instant visual feedback on memory usage.
Adjustable intensity settings for better visibility.
3. Editor UI Panel
Dockable and user-friendly interface displaying an overview of VRAM usage, asset lists, and export options.
Use Cases
Mobile Optimization: Identify and reduce high VRAM usage to meet device limitations.
PC Optimization: Optimize assets for mid-range GPUs to prevent performance issues.
Level Design: Provide real-time memory feedback during the design process for better asset management.
Performance Profiling: Analyze memory usage to correlate with performance metrics.
Technical Implementation
Memory Calculation Methods: Utilizes formulas to estimate memory sizes for different asset types.
Heatmap Algorithm: Iterates through actors, calculates memory costs, and visualizes them accordingly.
Architecture Overview
Module Design: Follows a structured approach with different classes handling various functionalities, such as memory tracking and UI management.
Build Requirements
Dependencies: Includes core Unreal Engine libraries required for functionality.
Supported Platforms: Specifically optimized for Windows and Android.
Performance Characteristics
Quick operations with minimal overhead, ensuring no significant impact on game performance during runtime.
Quick Start Guide
Build the plugin using Visual Studio.
Enable it in the Unreal Editor.
Access via Window → Shader Memory Atlas to start profiling.
Advantages Over Built-in Tools
Feature Built-in Tools Shader Memory
AtlasVisual heatmap ❌ ✅
Per-actor breakdown ❌ ✅
Direct asset navigation ❌ ✅
CSV export capability ❌ ✅
Real-time toggle ❌ ✅
Learning Opportunities
Demonstrates UE4 plugin architecture, Slate UI development, and RHI integration.
Provides insights into effective asset management and visual debugging techniques.
Quality Standards
Features well-commented, modular code with thorough error handling and user-friendly interfaces.
Final Notes
The plugin is ready for immediate use and is positioned as a robust tool for developers looking to optimize their projects effectively.
Comprehensive documentation ensures users of all levels can quickly leverage its features for better performance.