UnityEQLabs Create: Modeling & Animation
UV Cartographer
Purpose
Section titled “Purpose”Creates non-destructive duplicate meshes with generated UV channels and optional RG-packed flow-field textures for feature-aware UV, NPR mark direction, trimsheet, and lightmap handoff workflows.
Menu path
Section titled “Menu path”Tools/EQLabs/Creation/Modeling/UV Cartographer
Current Scope
Section titled “Current Scope”- Selection-driven mesh source assignment.
- Profile assets for mode, target channel, projection padding, NPR direction, and flow-field export settings.
- Duplicate mesh generation under
Assets/EQLabs/Generated/Create_AnimationModeling/UvCartographer/Meshes. - Flow-field PNG export under
Assets/EQLabs/Generated/Create_AnimationModeling/UvCartographer/Textures. - Feature detection for boundary edges, hard edges, material/submesh borders, and existing UV seam candidates.
- Scene view feature preview with color-coded feature edges and a raised summary label.
- Scene view Pick Mode for adding/removing manual feature edges.
- Scene view Stroke Mode for recording a preferred flow direction.
- Dedicated
UV CartographerScene viewEditorToolfor feature picking and stroke recording. - Chain simplification that merges adjacent detected feature edges into longer marked chains.
- Feature set assets under the EQLabs Create_AnimationModeling preset folder.
- Feature-chain-aware projection basis in the editor solver API.
- Starter NPR/profile assets for Hatching, Brush Flow, Manga Tone, Wood Grain, and Cloth Weave.
- Feature-chain-aware and stroke-aware flow-field orientation when detected, saved, or recorded feature direction data is present.
- Clean-room Penner-style cotangent solver with fixed-boundary constraints, projection fallback, and per mesh/profile/feature solve cache.
- Multi-mesh object batch generation from
MeshFilterandSkinnedMeshRendererchildren. - Optional UDIM tile offset output for generated UV channels.
- Shader Graph Custom Function handoff include at
Assets/EQLabs/Shaders/Create_AnimationModeling/UvCartographer/UVCartographerFlowField.hlsl. - Flow preview shader and generated sample-material utility.
- Automatic JSON result reports under
Assets/EQLabs/Generated/Create_AnimationModeling/Reports/UvCartographer. - Lightmap mode that routes to Unity UV2/channel 1 generation.
- Result metrics for target channel, distortion, seam candidates, feature alignment, generated mesh path, and flow texture path.
How to Use
Section titled “How to Use”- Open
Tools > EQLabs > Creation > Modeling > UV Cartographer. - Select a mesh asset or a scene object with a
MeshFilterorSkinnedMeshRenderer. - Click
Use Selected Mesh, or assign a source mesh manually. - In
Feature Detection, choose the hard-edge angle and enabled feature categories. - Click
Detect Featuresto build feature candidates and show the Scene view preview. - Enable
Pick Modeto manually add or remove feature edges in the Scene view. - Left-click an edge to add a manual feature chain.
- Right-click or Shift-click a nearby edge to remove the matching feature chain.
- Optionally enable
Stroke Mode, then drag in the Scene view to record a flow direction. - Optionally click
Simplify Chainsto merge adjacent detected edges into longer marked chains. - Optionally click
Save Feature Setto persist the detected, manual, and stroke feature data. - Choose a mode and target UV channel.
- Enable
UDIM Tileswhen batch output should offset generated UVs into UDIM tile space. - Enable
Export Flow Fieldwhen an NPR or shader workflow needs a direction texture. - Click
Generate Duplicatefor one mesh orGenerate Object Batchfor all mesh children on the assigned/selected object. - Optionally click
Create Flow Preview Materialto generate a sample material under the EQLabs generated folder. - Review the generated mesh, optional flow texture, sample material, and JSON report under the EQLabs generated folder.
Starter Profiles
Section titled “Starter Profiles”Use Create Starter Profiles to create five ready-to-edit profile assets:
- Hatching
- Brush Flow
- Manga Tone
- Wood Grain
- Cloth Weave
These profiles enable flow-field export by default and are intended as fast presets for NPR material workflows.
Flow Field Shader Handoff
Section titled “Flow Field Shader Handoff”The exported flow-field PNG stores:
- R/G: signed 2D direction encoded from
-1..1into0..1. - B: coverage or validity strength.
- A: opaque mask.
For Shader Graph, add a Custom Function node in File mode:
- File:
Assets/EQLabs/Shaders/Create_AnimationModeling/UvCartographer/UVCartographerFlowField.hlsl - Function examples:
UVCartographer_DecodeFlow_floatUVCartographer_FlowOffset_floatUVCartographer_OrientedCoordinates_floatUVCartographer_AnisotropicStripe_float
Sample the flow-field texture in Shader Graph, pass its RGBA output into packedFlow, and use the generated mesh UV channel selected in the UV Cartographer result. The include also provides _half variants for half-precision Shader Graph previews.
The bundled flow preview shader is available at:
Assets/EQLabs/Shaders/Create_AnimationModeling/UvCartographer/UVCartographerFlowPreview.shader
Use Create Flow Preview Material to generate a material under Assets/EQLabs/Generated/Create_AnimationModeling/UvCartographer/ShaderSamples.
Penner Mode
Section titled “Penner Mode”Penner is a clean-room cotangent-weighted solver path. It fixes open mesh boundary vertices to a feature-aligned projection, relaxes interior vertices with cotangent weights, records solver metadata in the result report, and caches solves by mesh/profile/feature hash. Closed meshes and overly large meshes fall back to the stable feature projection path with a review warning instead of modifying source assets.
Multi-Mesh And UDIM
Section titled “Multi-Mesh And UDIM”Generate Object Batch collects MeshFilter and SkinnedMeshRenderer children from the assigned source object or active selection. Each source mesh produces a separate duplicate mesh, optional flow texture, and JSON report under the EQLabs generated folder.
When UDIM Tiles is enabled, generated UVs are offset by tile:
- first mesh: selected start tile, default
1001 - next meshes: increment across UDIM columns, then rows
- lightmap mode ignores UDIM offsets because Unity lightmaps expect normalized UV2 charts
Output Policy
Section titled “Output Policy”- Source meshes are not modified.
- Generated meshes and textures live under the EQLabs generated Create_AnimationModeling folder.
- Generated JSON reports live under the EQLabs generated report folder.
- Lightmap mode writes Unity UV2/channel 1.
- Flow-field textures are imported as linear, uncompressed, repeat-wrapped textures.
- Shader handoff files are source include files only; generated user outputs still live under the EQLabs generated folder.
- Batch meshes, flow textures, reports, and sample materials are generated under
Assets/EQLabs/Generated/Create_AnimationModeling/UvCartographer.
Opens our feedback form in a new tab with the tool name pre-filled.