Skip to content

DTS 场景整合 Skill

将一个目录中的多个 .3dt 整合为可管理的 DTS 工程,生成 .dtml、同名 _files 资源目录及分类图层树。

技能名称: build-dtml-project · 版本: 1.0.0 · 更新日期: 2026-09-15

下载完整技能包 · SHA-256 校验文件 · 发布清单

适合做什么

  • 将建筑、地面、水面、道路、植物等分类 3DT 整合到同一个工程。
  • 按源目录结构生成 Folder 和 TileLayer,保留各类资源的管理层级。
  • 使用兼容母版生成完整 EPSG:3857 工程,保留相机、环境及其他工程设置的母版结构。
  • 打包便于搬迁的相对路径工程,或按明确需求直接引用本机绝对路径。
  • 检查资源缺失、空文件、失败记录、重复 ID 和工程结构。

本技能接收已发布的 3DT。将 FBX、BIM 等原始数据转换为 3DT,可先使用 DTS Engine Skill

安装

下载并解压 ZIP,将完整的 build-dtml-project 文件夹放入客户端的技能目录。以 Codex 为例:

text
~/.codex/skills/build-dtml-project/
├── SKILL.md
├── agents/openai.yaml
├── assets/dts-compatible-3857-base.dtml
├── references/dtml-rules.md
└── scripts/create_dtml_project.py

Windows 用户目录写法为 %USERPROFILE%\.codex\skills\build-dtml-project。若已经安装旧版,请先备份原文件夹再替换。重新打开客户端或新建会话后,使用技能名称调用。

运行生成脚本需要 Python 3.10 或更新版本,仅使用 Python 标准库,不需要另外安装 Python 依赖。

对 AI 这样说

text
使用 build-dtml-project,把 E:\Scene\3DT 中的资源整合为 DTS 工程。
输出到 E:\Scene\Output,工程名为 City,保留分类目录,使用可移植相对路径。

也可以直接运行:

powershell
python scripts/create_dtml_project.py "E:\Scene\3DT" `
  --output-dir "E:\Scene\Output" `
  --name "City"

生成结果:

text
Output/
├── City.dtml
└── City_files/
    ├── Buildings/Buildings.3dt
    ├── Ground/Ground.3dt
    ├── Water/Water.3dt
    ├── Roads/Roads.3dt
    └── Vegetation/Vegetation.3dt

实际输出会复制源目录的完整资源树,包括 3DT 的附属文件。将 .dtml 和同名 _files 目录一起移动或交付。

本次修复:3DT 资源路径

DTML 中的路径采用 DTS 的资源引用约定:

xml
<FilePath>../Water/Water.3dt</FilePath>

对应的实际资源位于 City_files/Water/Water.3dt。生成器不再将 City_files/Water/Water.3dt 直接写入 FilePath。

校验器也同步按该约定定位资源,允许开头的 ../ 资源根标记,拒绝后续的越界跳转、非法路径和旧格式引用。根目录模型、嵌套目录、中文及空格名称均有回归检查。

常用选项

选项用途
--name指定工程名称
--output-dir指定输出目录
--flat将图层放在同一层级,资源路径仍保留目录结构
--dry-run仅查看生成计划,不写入文件
--absolute-paths --no-copy引用源 3DT 的绝对路径,不复制模型,仍创建同名伴随目录
--overwrite明确覆盖已有输出,使用前备份

生成完成后,终端会输出 DTML 位置、资源目录、图层数量和 VALIDATION: passed。非空 failed-data.txt 会阻止生成,需先修复上游转换失败。

兼容性与验证

项目说明
已验证环境Windows、DTS Explorer 7.0
工程坐标系EPSG:3857,沿用兼容母版
路径实测七类独立 3DT 已在 DTS 中验证正常加载
自动检查目录层级、中文和空格、搬迁、缺失或空资源、路径越界、绝对路径模式
工程设置仅重建 ProjectTree,非 ProjectTree 设置与母版保持一致

声明 EPSG:3857 不会转换模型顶点坐标,输入模型需要事先使用正确坐标和原点。升级 DTS 版本或更换数据集后,应重新检查实际加载效果。

下载内容与使用范围

下载包包含技能说明、Python 生成器、DTML 母版、路径规则和客户端元数据。无需上传模型,生成和校验在本机进行。

本包不包含 DTS Engine、DTS Explorer 或场景模型;DTS 软件及数据资源沿用各自许可。本次技能发布未附独立开源许可证。