📺 Watch a video
📺 More test runs
[This repository deals with advanced bypasses of standard Unreal C++ bottlenecks. 🟢 Currently available for B2B consulting and remote contract/Co-Dev integration (CET Timezone). Contact form.]
The "Shader Compilation" plugins on assorted marketplaces brute-force load all of your assets at once. If you have a massive 50GB project, this will cause your RAM to spike, your loading screen to freeze entirely, and eventually result in an Out-Of-Memory (OOM) crash.
PSO Autopilot aims to fix this.
Instead of loading thousands of materials simultaneously, PSO Autopilot Core uses the FStreamableManager to asynchronously stream your Materials in controlled batches (e.g., 100 at a time). After a batch is compiled via the Engine's native FShaderPipelineCache, the plugin explicitly drops references and yields to Unreal's asynchronous Garbage Collection. Your RAM footprint remains completely flat, making this tool safe for massive open-world projects.
📖 A detailed manual is available at: https://gregorigin.com/PSO_Autopilot/
💎 A Pro version is available at Fab. It includes important additional functionality: Time-Sliced Game Thread Yielding, Smart Cache Skipping, Engine PSO Pacing, and much more. If you are releasing a commercial game and want a truly seamless player experience, you probably want the Pro version.
| Feature Comparison | Core GitHub version (0.1+ MIT) | Pro FAB edition (0.3+ Closed) |
|---|---|---|
| 📦 Version | Core | Fully featured + updated |
| 🚚 Distribution | Source only | Binaries, vetted by Epic |
| ⚙️ Engine support | UE 5.7.0 | UE 5.6 - 5.7.3+ |
| 🧠 Memory-Safe Chunking | ✅ Included | ✅ Included |
| 🛡️ OOM Crash Mitigation | ✅ Included | ✅ Included |
| ⏱️ Sub-second Loading Screens | ✅ Included | ✅ Included |
| ⏳ Time-Sliced Game Thread Yielding | ❌ n/a | ✅ Included |
| ⏭️ Smart Cache Skipping | ❌ n/a | ✅ Included |
| 🐎 Engine PSO Pacing | ❌ n/a | ✅ Included |
| 🎆 Niagara Systems Support | ❌ n/a | ✅ Included |
| 🚀 Zero-Redundancy Boot | ❌ n/a | ✅ Included |
| 🛑 Exclude Specific Classes From Scan | ❌ n/a | ✅ Included |
| 🎯 Explicit Assets to Warm | ❌ n/a | ✅ Included |
| 🔄 Runtime-Queued Assets | ❌ n/a | ✅ Included |
| 🔗 Package Dependency Expansion | ❌ n/a | ✅ Included |
| 💽 Destination-Level Package Preloading | ❌ n/a | ✅ Included |
| 🧱 Asset-Specific PSO Precache | ❌ n/a | ✅ Included |
| 🧪 3-level Torture Test Demo | ❌ n/a | ✅ Included |
| 🏗️ Production Boot-Flow Sample | ❌ n/a | ✅ Included |
| 🔄 Updates | ❌ n/a | ✅ Regular, vetted by Epic |
| 🕵️ Quality Assurance | GitHub Issues | ✅ Vetted by Epic, tested by author |
| 💬 Support | GitHub Issues | ✅ Forum & Email |
- Copy the
PSOAutopilotCorefolder into your project'sPluginsfolder. - Regenerate Visual Studio files and compile.
- Open Unreal Engine. Go to Edit > Project Settings > PSO Autopilot Core. Set your target directories and batch sizes.
- In your Loading Screen UI Blueprint, call
Get Game Instance Subsystem->PSO Autopilot Core Subsystem. - Bind an event to
On Progress Updatedto drive your loading bar. - Call
Start Warmup.
Code by Andras Gregori. MIT License.

