italink/unrealclientprotocol/unreal-modeling-query

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-query

SKILL.md

建模 — 查询与空间

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

库

库CDO
查询/Script/GeometryScriptingCore.Default__GeometryScriptLibrary_MeshQueryFunctions
空间/Script/GeometryScriptingCore.Default__GeometryScriptLibrary_MeshSpatialFunctions
采样/Script/GeometryScriptingCore.Default__GeometryScriptLibrary_MeshSamplingFunctions
包含/Script/GeometryScriptingCore.Default__GeometryScriptLibrary_ContainmentFunctions
比较/Script/GeometryScriptingCore.Default__GeometryScriptLibrary_MeshComparisonFunctions
测地线/Script/GeometryScriptingCore.Default__GeometryScriptLibrary_MeshGeodesicFunctions

提示:简单的 mesh 概览可直接用 MeshOperationLibrary.GetMeshSummary,一次调用返回所有基础信息。以下函数用于更精细的查询。

查询函数 — 全局信息

函数out 参数说明
GetMeshInfoStringInfoString可读的 mesh 信息字符串
GetIsDenseMeshbIsDenseID 空间是否无间隙
GetMeshBoundingBox返回 FBox包围盒
GetMeshVolumeAreaSurfaceArea, Volume表面积和体积
GetMeshVolumeAreaCenterSurfaceArea, Volume, CenterOfMass表面积、体积、质心
GetIsClosedMeshbIsClosed是否闭合
GetNumOpenBorderLoopsNumLoops开放边界环数量
GetNumOpenBorderEdgesNumEdges开放边界边数量
GetNumConnectedComponentsNumComponents连通分量数
GetMeshHasAttributeSetbHasAttributeSet是否有属性集

查询函数 — 计数与 ID

函数out 参数说明
GetVertexCount返回 int顶点数
GetNumVertexIDsNumVertexIDsMaxVertexID
GetHasVertexIDGapsbHasGaps顶点 ID 是否有间隙
GetNumTriangleIDsNumTriangleIDsMaxTriangleID
GetHasTriangleIDGapsbHasGaps三角形 ID 是否有间隙
GetNumUVSetsNumUVSetsUV 通道数
GetNumExtendedPolygroupLayers返回 int扩展 Polygroup 层数

查询函数 — 属性存在性

函数out 参数
GetHasTriangleNormalsbHasNormals
GetHasVertexColorsbHasColors
GetHasMaterialIDsbHasMaterialIDs
GetHasPolygroupsbHasPolygroups

查询函数 — 元素数据

函数关键参数说明
GetVertexPositionVertexID返回顶点位置。out:bIsValidVertex
GetTrianglePositionsTriangleID返回三角形三个顶点位置。out:bIsValidTriangle
GetTriangleIndicesTriangleID返回三角形的三个顶点 ID
GetTriangleFaceNormalTriangleID返回面法线
GetTriangleNormalsTriangleID返回三个角的法线
GetTriangleUVsTriangleID, UVSetIndex返回三个角的 UV
GetTriangleVertexColorsTriangleID返回三个角的顶点色
GetVertexConnectedTrianglesVertexID返回顶点关联的三角形 ID 列表
GetVertexConnectedVerticesVertexID返回顶点的邻居顶点 ID 列表

查询函数 — 批量获取

函数说明
GetAllTriangleIDs返回所有三角形 ID 列表
GetAllTriangleIndices返回所有三角形的顶点索引列表
GetAllVertexIDs返回所有顶点 ID 列表
GetAllVertexPositions返回所有顶点位置列表

注意:批量函数返回 FGeometryScriptIndexList、FGeometryScriptTriangleList、FGeometryScriptVectorList 等不可序列化类型。用 MeshOperationLibrary 的 GetIndexListArray、GetTriangleListArray、GetVectorListArray 提取数据。

空间函数

函数关键参数说明
BuildBVHForMeshTargetMesh构建 BVH 加速结构。out:OutputBVH
RebuildBVHForMeshTargetMesh, UpdateBVH重建已有 BVH
FindNearestPointOnMeshTargetMesh, QueryPoint, Options查找 mesh 上最近点。out:NearestResult
FindNearestRayIntersectionWithMeshTargetMesh, RayOrigin, RayDirection, Options射线与 mesh 求交。out:HitResult
IsPointInsideMeshTargetMesh, QueryPoint, Options点是否在 mesh 内部。out:bIsInside(需要 BVH)

注意:FGeometryScriptDynamicMeshBVH 不可序列化,BVH 只能在同一调用链中使用(如 Python 脚本内)。对于跨调用的空间查询,建议用 Python 脚本批量处理。

采样函数

函数关键参数说明
ComputePointSamplingTargetMesh, Options泊松盘采样
ComputeUniformRandomPointSamplingTargetMesh, Options均匀随机采样
ComputeNonUniformPointSamplingTargetMesh, Options非均匀采样
ComputeVertexWeightedPointSamplingTargetMesh, Options顶点权重采样

比较函数

函数关键参数说明
IsSameMeshAsTargetMesh, OtherMesh, Options两个 mesh 是否相同
MeasureDistancesBetweenMeshesTargetMesh, OtherMesh测量两个 mesh 间的距离
IsIntersectingMeshTargetMesh, OtherMesh, TargetTransform, OtherTransform两个 mesh 是否相交

JSON 示例

获取包围盒:

json
{"object":"/Script/GeometryScriptingCore.Default__GeometryScriptLibrary_MeshQueryFunctions","function":"GetMeshBoundingBox","params":{"TargetMesh":"/Engine/Transient.DynamicMesh_0"}}

获取三角形顶点位置:

json
{"object":"/Script/GeometryScriptingCore.Default__GeometryScriptLibrary_MeshQueryFunctions","function":"GetTrianglePositions","params":{"TargetMesh":"/Engine/Transient.DynamicMesh_0","TriangleID":0}}

获取体积和表面积:

json
{"object":"/Script/GeometryScriptingCore.Default__GeometryScriptLibrary_MeshQueryFunctions","function":"GetMeshVolumeArea","params":{"TargetMesh":"/Engine/Transient.DynamicMesh_0"}}

发现

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

Security

  • Security scanPassed, 100 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-query/badge)](https://verified-skill.com/skills/italink/unrealclientprotocol/unreal-modeling-query)

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