A GPU-accelerated texture compositor. Procedurally mix PBR materials using noise-based splatting, or use Texture Bombing to stamp details. Includes a channel packer and tileable image generator.Procedural Material GenerationThe Texture Splatting & Bombing Toolkit is a free, Editor-only utility designed to procedurally combine, blend, and modify textures directly within Unity. Rather than relying on external image editors to create material variations or scatter details, this suite allows you to bake multiple input textures into a single, flattened PBR texture set using GPU-accelerated algorithms. Whether you are blending dirt and rock for a static environment mesh, stamping debris across a ground texture, or simply reorganizing RGBA data maps, this toolkit provides a fast, offline pipeline for generating new texture assets from your existing library.Tool 1: The Procedural Compositor (Splatting & Bombing)The core feature of this suite is the Texture Combiner. It allows you to assign up to four distinct texture sets and procedurally fuse them into a new material using two distinct GPU-accelerated assembly methods.Texture Splatting (Noise Blending): The tool generates a master splat map using configurable fractal (fBm) or cellular noise. It then mathematically cross-fades the assigned texture layers based on your defined dominance, sharpness, and scaling parameters.Texture Bombing (Cloning): Designed for scatter details, this mode takes a smaller input texture, such as leaves, pebbles, or debris, and stamps it across a designated background canvas. The algorithm applies randomized rotation, scale, and distribution density to break up repeating patterns and create an organic spread.Automated Aspect Fill: If you assign input textures of varying resolutions or dimensions, the engine safely center-crops them to perfectly match your target output bounds without destructive stretching.Presets & Detached Previews: Save your exact procedural configurations as ScriptableObject presets, and visualize your composite materials in a detached, dockable 2D GPU preview window before saving them to disk.Tool 2: The Seamless SandboxThis utility takes raw, non-tiling images and mathematically processes them to tile seamlessly. It provides two distinct algorithmic strategies to handle different types of input. The mirroring method uses symmetry combined with noise disruption to break up obvious kaleidoscope effects, while the offset method centers the seams and applies an fBm cross-mask to blend them away.The sandbox processes all assigned PBR maps (Albedo, Normal, Mask, Height) synchronously using the exact same offsets and noise seeds, ensuring perfect alignment across the entire material set. Like the Combiner, this module natively supports automated Aspect Fill for irregularly sized inputs and features its own detached GPU preview window for visualization.Tool 3: The Batch Channel PackerA dedicated utility for reorganizing and optimizing texture data. It allows you to take separate grayscale maps—such as ambient occlusion, roughness, and metallic maps—and swizzle them into a single packed data texture, like a standard Unity Mask Map. The packer includes a batch-processing mode, enabling you to apply the exact same extraction and inversion rules to an entire folder of textures simultaneously.Unlike the Combiner and Seamless Sandbox, the Channel Packer acts as a rigid 1:1 pixel data translation tool. To protect the integrity of your material coordinates, it does not use Aspect Fill and will explicitly block generation if it detects mismatched aspect ratios among your inputs.Limitations & ScopeTo ensure this tool fits your specific use case, please note its practical limitations:Input-dependent quality: This toolkit will not magically generate normal maps or mask maps from scratch, nor will it make a poor-quality texture look good. The quality of the final generated asset is strictly dependent on the quality of the input textures provided. It only blends, bombs, and swizzles existing data.Inherent seamless artifacts: Algorithmic seamless generation inherently introduces visual artifacts or texture warping. While the tool provides parameters to minimize these issues, fundamental mathematical limitations remain when attempting to force highly structured, directional patterns (like a photo of a brick wall or specific architectural tiles) to tile seamlessly. The seamless tools perform best on chaotic, organic noise.It is not a 3D Painter: This operates entirely in 2D texture space. It is not a replacement for dedicated 3D painting software, and you cannot paint directly onto meshes.It is strictly for Editor use: This is an offline asset generation utility, not a runtime API. It cannot be used to generate materials dynamically during gameplay.A Note from the DeveloperI originally built this toolkit because I frequently found myself working with raw textures or mismatched mask maps and was frustrated by the need to boot up heavy external software just to execute a simple procedural blend or channel swap. Because this pipeline streamlined my own material workflow, I am releasing it for free to help you modify and generate your own assets.To help you test the blending mechanics immediately, the package includes an optional procedural texture generator, allowing you to generate temporary test maps via CPU math rather than relying on heavy sample textures.If this tool saves you time, leaving a rating and review is highly appreciated. Additionally, I highly encourage you to check out the premium environment tools on my Publisher Page. While the Texture Fuser optimizes your material data, managing massive environments requires optimizing your geometry as well:Terrain Slicer: Instantly divide massive, monolithic landscapes into streamable, optimized chunks using the Burst Compiler.Terrain Merger: The exact inverse of the Slicer. Stitch split terrain chunks back together to paint global biomes across seams.BurstLOD: Rapidly generate runtime or Editor-based LODs, ensuring the custom prefabs you place on your newly textured environments stay just as optimized.Asset Specs & FormatAsset Type: Editor-only utility housed in a custom Assembly Definition (.asmdef). Contains zero runtime execution logic and leaves no footprint in a compiled build.Dependencies & Pipelines: Zero third-party dependencies. Because the tool simply computes and outputs standard 2D texture assets (PNGs), the generated files are compatible out-of-the-box with the Built-In Render Pipeline, URP, and HDRP.Demo Content: Includes a lightweight procedural texture generator for local testing, bypassing the need to include heavy sample textures. This folder is strictly for demonstration and can be permanently deleted without impacting the core utility.Under-the-Hood Execution EngineGPU Compute Acceleration: All heavy mathematical operations—including fractal noise (fBm) generation, Voronoi cellular distributions, domain warping, texture bombing, and channel swizzling—are dispatched directly to HLSL Compute Shaders (.compute). This bypasses CPU bottlenecks during complex multi-layer composition.Reoriented Normal Mapping (RNM): The engine actively detects normal maps and routes them away from standard linear interpolation. They are processed through a dedicated RNM kernel, mathematically preserving the steepness and curvature of underlying tangent space vectors during procedural cross-fades.Asynchronous Data Handling: The suite utilizes the C# Job System (IJob) alongside NativeArray allocations to handle raw PNG encoding asynchronously. This ensures the Unity main thread remains responsive when batch-processing large folders of high-resolution textures.Non-Destructive Import Failsafes: To accurately extract raw pixel data, pre-execution logic temporarily overrides specific TextureImporter settings on input files (such as sRGB toggles and compression formats). The script tracks these modifications and safely restores your original import configurations immediately after generation is complete.Bypass Undo Memory: Post-generation cleanup tools ("Delete Last Batch") execute permanent file deletion that explicitly bypasses the Unity Undo stack, preventing Editor memory bloat during rapid iteration.Legal & Licensing DisclaimerAsset Generation Liability: The algorithms in this tool generate derivative works based strictly on your input textures. Fusing or modifying existing textures does not automatically grant you ownership or resale rights over the newly generated material.Commercial Redistribution: You cannot package and sell textures generated by this tool on the Unity Asset Store or any other marketplace unless the specific licenses for the original input textures explicitly allow for derivative commercial redistribution. The developer assumes no liability for copyright infringement or platform policy violations committed by users utilizing this utility.Developer Support & Additional ToolsThis asset is provided for free to assist other developers in modifying and optimizing their project textures. If you found this utility practical, you can find other free and premium Editor extensions on my Publisher Page that are built with the same zero-bloat, highly optimized philosophy.

