Lost Soul Aside has been a high-profile project that began development in Unreal Engine 4, but has recently migrated to Unreal Engine 5. This change is not merely cosmetic; it involves a deep restructuring of the rendering pipeline to leverage technologies like Lumen and Nanite. The game stands out for its frenetic action combat where luminous particle effects take center stage, and its visual style directly recalls Final Fantasy productions. We analyze how developers achieve this result by combining Maya, ZBrush, and Epic's engine. 🎮
Asset pipeline and optimization for luminous particles 🔧
The workflow begins in ZBrush, where character and enemy models are sculpted with a high level of detail, aiming for that polished, stylized finish typical of Square Enix. Subsequently, those models are retopologized and prepared in Maya, where UVs are applied and animation rigs are configured. The technical key lies in the import into Unreal Engine 5. For the frenetic combat, developers must optimize the luminous particle shaders, using Niagara instead of UE4's old Cascade. It is crucial to adjust the polygon budget of the effects and use low-resolution textures for the light sprites, ensuring the screen does not become saturated with overdraw. Lumen handles dynamically lighting these particles, creating reflections and glints in real-time without the need for pre-baking.
The challenge of maintaining visual identity in real-time ⚡
Beyond the technology, the real challenge is maintaining artistic coherence. The Final Fantasy style is based on characters with complex hairstyles and detailed armor. Migrating these assets from ZBrush to UE5 requires intelligent use of material systems, such as high-quality hair shaders (using strips or cards) and the implementation of decals for armor patterns. Optimization is vital: an action game cannot afford frame drops due to an excess of particles. Therefore, developers must prioritize the visibility of effects over quantity, using particle pooling systems and aggressive LODs for enemy models on screen.
What specific technical challenges did the Lost Soul Aside team face when migrating the combat system and character shaders from Unreal Engine 4 to Unreal Engine 5, and how did they optimize the workflow to maintain real-time performance?
(PS: shaders are like mayonnaise: if they break, you have to start all over again)