uv-mapping

Inspect, generate, and transform UV channels on Unreal Engine StaticMesh assets.

648|142|Updated Sep 12, 2025
One-click install
npx skills add https://github.com/kevinpbuckley/VibeUE --skill uv-mapping
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: uv-mapping
Source: https://github.com/kevinpbuckley/VibeUE/tree/main/Content/Skills/uv-mapping
Command: npx skills add https://github.com/kevinpbuckley/VibeUE --skill uv-mapping

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve?

Fixing broken or missing UVs on Unreal Engine StaticMesh assets — bad lightmap overlaps, scrambled imports, incorrect texel density, or tiling issues — normally requires manual DCC round-trips. This Skill exposes UVMappingService so an AI agent can inspect, unwrap, transform, and audit UV channels directly inside the editor.

Core Features & Use Cases

  • UV Health Auditing: Run get_uv_health to check channel counts, lightmap configuration, overlap status, and texel density before making any edits.
  • Lightmap UV Generation: Auto-generate lightmap UV channels with correct LightMapCoordinateIndex and resolution settings, then verify overlap-free results.
  • Per-Region Transforms: Apply scale/rotate/offset to UV subsets filtered by vertex normal, polygon group (material slot), or connected UV island — ideal for fixing one distorted face without touching the rest.
  • Use Case: A newly imported mesh has no lightmap UVs and bakes with shadow artifacts. Run the health check, generate lightmap UVs from channel 0 into channel 1, set a 128 lightmap resolution, save the asset, and re-verify — all in one automated pass.

Quick Start

Ask the agent to run a UV health check on /Game/Meshes/SM_Wall and generate lightmap UVs if the lightmap channel has overlaps.

Frequently Asked Questions about uv-mapping

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I generate lightmap UVs for a StaticMesh in Unreal Engine?

Call UVMappingService.generate_lightmap_uvs with a source UV index, destination index (typically channel 1), and min chart spacing around 1.0. It sets LightMapCoordinateIndex automatically; follow with set_lightmap_settings and save the asset.

How do I fix stretched textures on one face of a mesh?

Use transform_u_vs_by_normal or transform_uv_island to scale UVs only on the affected region, leaving the rest untouched. If the issue is material orientation on a basic shape, prefer a world-aligned material or per-actor Material Instance instead.

Does UVMappingService work on SkeletalMesh assets?

No. Only list_uv_channels and mesh_has_uv_channel return read-only counts for skeletal meshes; all mutating operations fail because skeletal UV editing goes through FSkeletalMeshLODModel, which is not implemented.

Why do my UV edits disappear after running UVMappingService?

The service marks packages dirty and calls PostEditChange but never saves. You must call unreal.EditorAssetLibrary.save_asset on the mesh path after finishing a batch of edits, or changes are lost.

What are the UV channel limits for Unreal static meshes?

Static meshes support at most 8 UV channels (MAX_MESH_TEXTURE_COORDS_MD). Channel 0 cannot be removed, and by convention channel 0 holds material UVs while channel 1 holds lightmap UVs.