Extend the mesh without scaling
Mesh Extend Tool works similar to Unity's 9 slicing technique but for 3D meshes. Slice the mesh then extend along the axis.
Features
Limitations
How To Use
Add "Mesh 27 Slicer" component to any game object which has mesh filter component. That's it, you are ready.
Two Different Slice Technique
Simple technique is same as Unity's default 9-slicing technique. Middle region of the mesh is scaled while corners and edges preserve its original shape.
Tiled technique tiles the middle region of the mesh. UV map of the middle region is also tiled.
Requirements for Tiled and Alternative
Tiled technique connects the triangles between each middle regions and thus there are some requirements to connect correctly. These requirements can be solved either modifying the mesh by 3rd party modelling software or enabling cut option.
To satisfy by modelling software. Middle of the mesh is also need to cut by vertices. Tiled technique will connect those vertices together.
To use cut option. Just enable "Cut" option of the tool. This will cut the mesh at the specified location and repeats the middle region without connecting any vertices. I recommend using this option when only necessary beacuse this option increases vertex number a lot depending on your mesh.
What Do You Mean by Partial Scale Support?
It means the tool will work perfectly fine even though the object is scaled up or down but gizmos handles (Arrows seen in the scene window) might be in wrong position if the object scale is not (1, 1, 1). I recommend doing slicing in scale 1 then do the extension operation on your desired scale.
Performance
The tool is designed to work in editor. There are some performance optimizations done and might require more optimization to use it in play mode. Simple slice technique is much faster than tiled technique because it doesn't need to create new vertices.
Tiled and Tiled (Cut) requires more performance to repeat middle part and connect them together. Performance cost will increase with the extend size.
All the datas in the benchmark graph is average values. Values are calculated with C# StopWatch class in the editor. Benchmark done with all the axises selected by that slice option on 92 vertices, 68 triangles model, extended to create 7x7 tiled area. CPU: Intel i9 14900HX
Scripting
The tool is open source, you can modify it to your needs or use it in runtime.
You can read the README file here.