italink/unrealclientprotocol/unreal-modeling-selection

Claude Code and agent skill by italink/unrealclientprotocol

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

GeometryScript 网格选择操作。当用户要求按条件选择网格元素(球形/盒体/平面/法线角度/材质等)、组合选择、扩展/收缩选择时使用。

Install

npx vskill@latest install italink/unrealclientprotocol/unreal-modeling-selection

SKILL.md

建模 — 选择

前置条件:先阅读 unreal-modeling。

重要说明

FGeometryScriptMeshSelection 内部使用不可序列化的 TSharedPtr<FGeometrySelection> 存储数据,无法通过 UCP JSON 直接创建或传递选择内容。

创建选择的两种方式:

  1. MeshOperationLibrary 桥接函数(推荐用于简单选择):SelectAllTriangles、SelectTrianglesByIDs、SelectVerticesByIDs、SelectPolygroupByID、SelectMaterialByID——见 unreal-modeling 核心 Skill
  2. GeometryScript 原生选择函数(本 Skill):SelectMeshElementsInSphere、SelectMeshElementsByNormalAngle 等——适用于基于几何条件的复杂选择

创建后的 Selection 可作为参数传给其他 GeometryScript 函数(UV、变形、简化等)。

库

CDO:/Script/GeometryScriptingCore.Default__GeometryScriptLibrary_MeshSelectionFunctions

创建选择

函数关键参数说明
CreateSelectAllMeshSelectionTargetMesh选择全部。out:Selection
SelectMeshElementsInSphereTargetMesh, SphereOrigin, SphereRadius, SelectionType, MinNumTrianglePoints球形范围选择。out:Selection
SelectMeshElementsInBoxTargetMesh, BoxTransform, BoxDimensions, SelectionType, MinNumTrianglePoints盒体范围选择
SelectMeshElementsWithPlaneTargetMesh, PlaneOrigin, PlaneNormal, SelectionType, MinNumTrianglePoints平面一侧选择
SelectMeshElementsByNormalAngleTargetMesh, Normal, MaxAngleDeg, SelectionType, MinNumTrianglePoints按法线角度选择
SelectMeshElementsByMaterialIDTargetMesh, MaterialID按材质 ID 选择
EGeometryScriptMeshSelectionType
值说明
Vertices选择顶点
Edges选择边
Triangles选择三角形
Polygroups选择 Polygroup
MinNumTrianglePoints 参数

控制三角形被选中的条件:1 = 任意顶点在范围内即选中,2 = 至少两个顶点,3 = 全部顶点都在范围内。

转换选择

函数关键参数说明
ConvertMeshSelectionTargetMesh, FromSelection, NewType在顶点/三角形/Polygroup 间转换。out:ToSelection
ConvertMeshSelectionToIndexListTargetMesh, Selection转换为索引列表。out:IndexList、SelectionType
ConvertIndexListToMeshSelectionTargetMesh, IndexList, SelectionType从索引列表创建选择。out:Selection
ConvertIndexArrayToMeshSelectionTargetMesh, IndexArray, SelectionType从 int 数组创建选择

组合选择

函数关键参数说明
CombineMeshSelectionsSelectionA, SelectionB, CombineMode组合两个选择。out:ResultSelection
EGeometryScriptCombineSelectionMode
值说明
Add并集
Subtract差集(A - B)
Intersection交集

修改选择

函数关键参数说明
InvertMeshSelectionTargetMesh, Selection反转选择。out:NewSelection
ExpandMeshSelectionToConnectedTargetMesh, Selection扩展到连通区域。out:NewSelection
ExpandContractMeshSelectionTargetMesh, Selection, Iterations, bContract, bOnlyExpandToFaceNeighbours扩展/收缩选择

查询选择

函数关键参数说明
GetMeshSelectionInfoSelectionout:SelectionType、NumSelected

JSON 示例

球形范围选择三角形:

json
{"object":"/Script/GeometryScriptingCore.Default__GeometryScriptLibrary_MeshSelectionFunctions","function":"SelectMeshElementsInSphere","params":{"TargetMesh":"/Engine/Transient.DynamicMesh_0","SphereOrigin":{"X":0,"Y":0,"Z":50},"SphereRadius":100,"SelectionType":"Triangles","MinNumTrianglePoints":1}}

按法线角度选择(朝上的面):

json
{"object":"/Script/GeometryScriptingCore.Default__GeometryScriptLibrary_MeshSelectionFunctions","function":"SelectMeshElementsByNormalAngle","params":{"TargetMesh":"/Engine/Transient.DynamicMesh_0","Normal":{"X":0,"Y":0,"Z":1},"MaxAngleDeg":45,"SelectionType":"Triangles","MinNumTrianglePoints":3}}

组合两个选择(并集):

使用 Python 脚本在单次调用中完成多步选择组合,避免 Selection 的不可序列化问题:

python
# 通过 ExecutePythonScript 在引擎内执行
import unreal
# ... 在脚本内创建、组合选择并传给后续操作

或者分步调用:先创建选择 A,再创建选择 B,然后组合——每步的 Selection 作为 out 参数返回后可在下一步作为输入使用(UCP 会在同一连接内保持对象引用)。

发现

对 CDO 路径调用 DescribeObject 可查看完整函数列表和参数签名。

Security

  • Security scanPassed, 90 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
114
Repository forks
14
7-day trend score
24

Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/italink/unrealclientprotocol/unreal-modeling-selection/badge)](https://verified-skill.com/skills/italink/unrealclientprotocol/unreal-modeling-selection)

Something wrong with this skill or its page? Tell us.