The Materials Combinator is a free, multithreaded editor utility designed to procedurally pack fragmented textures into unified atlases and permanently remap your mesh UVs directly within Unity.
Building environments using modular asset packs and kitbashed props provides excellent visual variety, but it can quickly destroy your rendering performance. Every unique material assigned to a prop forces a separate draw call, creating a severe CPU bottleneck as your scene density increases. The Materials Combinator addresses this specific overhead. Rather than forcing you to export your scenes to external 3D software like Blender or Maya, this tool automates the atlasing process inside the Unity Editor. It packs your disparate textures into a single shared atlas and rewrites the geometric UV data of your meshes so they can share a single material, drastically lowering your active draw calls.
A Note on Strategic Optimization
While combining materials is a highly effective way to reduce draw calls, it requires careful planning. This is a strategic optimization utility, not a magic "fix-all" button. Carelessly applying this to every object in your project will result in massive, redundant texture atlases that unnecessarily bloat your GPU's VRAM. The tool works best when used purposefully to combine groups of props that are frequently placed together and share similar shader profiles.
Core Workflows & Capabilities
The Combinator is designed to handle varying levels of project complexity through automated analysis and flexible output modes.
Dynamic Shader Analysis
Because different shaders use different property names, the engine dynamically scans the shaders of your inputted prefabs. It provides a clean UI where you can explicitly select which texture maps to pack (Base Color, Normal, Masks, etc.). If you are combining assets and one prop is missing a specific map, the engine will automatically generate and inject a minimal fallback texture to ensure the atlas remains mathematically sound and your shaders do not break.
Material Output Modes
The tool provides two distinct output methods depending on your rendering pipeline.
Bounds & Scaling Management
The packer operates within strict maximum constraints that you define to manage memory footprint. To prevent packing failures when processing massive inputs, you can enable Auto-Downscale Large Inputs, which temporarily shrinks oversized textures before packing so they fit within your defined boundaries. Additionally, you can apply a Final Atlas Downscale Factor to reduce the resolution of the finished atlas, saving crucial VRAM when targeting lower-end hardware.
The Sandbox Safety Net
Because texture packing and UV rewriting permanently alter assets, testing these operations on production files carries some risk. To give you a safe place to experiment, the asset includes a Demo Control Panel. This utility generates procedural test models and textures from raw code, letting you play with packing boundaries and padding rules without touching your actual project data.
The interface also features a dedicated undo button. If you run a generation cycle and realize your padding was too low, simply click it to instantly delete the output folder and keep your project directory clean.
Technical Realities & LimitationsBefore adding this tool to your pipeline, it helps to know exactly what it can and can't do. The Materials Combinator is a material and UV optimizer, not a spatial scene layout tool.
Ecosystem Solutions & Support
The Materials Combinator is part of a larger set of world-building tools designed to target specific rendering bottlenecks. To get the most out of your optimizations, consider pairing it with:
As a solo developer, making and maintaining free utilities takes a lot of time. If the Materials Combinator speeds up your workflow or helps fix your draw call bottlenecks, please consider leaving a rating or review on the Asset Store. Reviews are incredibly helpful for getting the tool in front of other developers and directly support my ability to keep updating it.