使用指南
资产 / 地形 / TerrainAsset节点
资产 / 地形 / TerrainAsset 节点手册,包含 26 个节点的用途、引脚、使用场景和注意事项。
学习目标
读取和验证 Cocos 资产对象,把图片、音频、材质、Prefab 等资源接入工作流逻辑。
覆盖范围
- 节点数量:26
- 分类路径:资产 / 地形 / TerrainAsset
典型使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
通用注意事项
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
节点索引
| 节点 | 节点 ID | 输入/输出 | 执行方式 |
|---|---|---|---|
| 获取 I 方向顶点数 | terrainAssetGetVertexCountI | 1 / 1 | 立即继续 |
| 获取 J 方向顶点数 | terrainAssetGetVertexCountJ | 1 / 1 | 立即继续 |
| 获取版本号 | terrainAssetGetVersion | 1 / 1 | 立即继续 |
| 获取层索引缓存 | terrainAssetGetLayerBuffer | 1 / 1 | 立即继续 |
| 获取顶点高度 | terrainAssetGetHeight | 3 / 1 | 立即继续 |
| 获取法线缓存 | terrainAssetGetNormals | 1 / 1 | 立即继续 |
| 获取高度缓存 | terrainAssetGetHeights | 1 / 1 | 立即继续 |
| 获取光照图大小 | terrainAssetGetLightMapSize | 1 / 1 | 立即继续 |
| 获取块格尺寸 | terrainAssetGetTileSize | 1 / 1 | 立即继续 |
| 获取块数量 | terrainAssetGetBlockCount | 1 / 3 | 立即继续 |
| 获取全部属性 | terrainAssetGetProperties | 1 / 14 | 立即继续 |
| 获取权重缓存 | terrainAssetGetWeights | 1 / 1 | 立即继续 |
| 获取权重图大小 | terrainAssetGetWeightMapSize | 1 / 1 | 立即继续 |
| 获取纹理层索引 | terrainAssetGetLayer | 4 / 1 | 立即继续 |
| 获取纹理层信息 | terrainAssetGetLayerInfos | 1 / 1 | 立即继续 |
| 批量设置属性 | terrainAssetSetProperties | 12 / 2 | 立即继续 |
| 设置层索引缓存 | terrainAssetSetLayerBuffer | 3 / 2 | 立即继续 |
| 设置法线缓存 | terrainAssetSetNormals | 3 / 2 | 立即继续 |
| 设置高度缓存 | terrainAssetSetHeights | 3 / 2 | 立即继续 |
| 设置光照图大小 | terrainAssetSetLightMapSize | 3 / 2 | 立即继续 |
| 设置块格尺寸 | terrainAssetSetTileSize | 3 / 2 | 立即继续 |
| 设置块数量 | terrainAssetSetBlockCount | 4 / 2 | 立即继续 |
| 设置权重缓存 | terrainAssetSetWeights | 3 / 2 | 立即继续 |
| 设置权重图大小 | terrainAssetSetWeightMapSize | 3 / 2 | 立即继续 |
| 设置纹理层信息 | terrainAssetSetLayerInfos | 3 / 2 | 立即继续 |
| 新建地形资产 | terrainAssetCreate | 1 / 2 | 立即继续 |
获取 I 方向顶点数
读取 TerrainAsset I 方向(X 轴)的顶点总数。 通常等于 xBlocks × blockSize + 1(blockSize 由引擎地形配置决定)。 该值用于确定 getHeight(i, j) 中 i 参数的合法范围。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetGetVertexCountI |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
vertexCountI | I 方向顶点数 | 数据 | number | I 方向顶点数 地形 I 方向(X 轴)的顶点总数。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
获取 J 方向顶点数
读取 TerrainAsset J 方向(Z 轴)的顶点总数。 通常等于 yBlocks × blockSize + 1(blockSize 由引擎地形配置决定)。 该值用于确定 getHeight(i, j) 中 j 参数的合法范围。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetGetVertexCountJ |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
vertexCountJ | J 方向顶点数 | 数据 | number | J 方向顶点数 地形 J 方向(Z 轴)的顶点总数。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
获取版本号
读取 TerrainAsset 的 version 属性,返回地形资产文件的格式版本号。 此属性只读,仅用于了解资产格式版本,通常不需要手动判断。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetGetVersion |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
version | 版本号 | 数据 | number | 版本号 地形资产文件的格式版本号,只读。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
获取层索引缓存
读取 TerrainAsset 的 layerBuffer 属性,返回存储每个地形块纹理层索引的 number[] 数组。 每个元素对应一个地形块上某混合层的纹理层索引,指向 layerInfos 中相应层的纹理配置。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetGetLayerBuffer |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
layerBuffer | 层索引缓存 | 数据 | number / array | 层索引缓存(layerBuffer) 每个地形块纹理层索引的 number[] 数组,指向 layerInfos 中的相应层配置。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
获取顶点高度
按顶点网格坐标 (i, j) 从 TerrainAsset 的 heights 缓冲区中读取并归一化为最终高度值。 参数说明:
- i:顶点网格 I 方向索引(对应 X 轴,范围 [0, vertexCountI - 1])
- j:顶点网格 J 方向索引(对应 Z 轴,范围 [0, vertexCountJ - 1]) 返回值已按 TERRAIN_HEIGHT_BASE + rawHeight × TERRAIN_HEIGHT_FACTORY 归一化为最终世界空间高度。 注意:这是对 heights 缓冲区数据的查询,而不是对场景 Terrain 组件实际渲染高度的查询。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetGetHeight |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
i | I 坐标 | 数据 | number | I 坐标 顶点网格 I 方向索引(对应 X 轴),范围 [0, vertexCountI - 1]。 | 输入框 默认值:0 | 可选 |
j | J 坐标 | 数据 | number | J 坐标 顶点网格 J 方向索引(对应 Z 轴),范围 [0, vertexCountJ - 1]。 | 输入框 默认值:0 | 可选 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
height | 高度 | 数据 | number | 高度 已归一化的最终高度值(世界空间)。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
获取法线缓存
读取 TerrainAsset 的 normals 属性,返回存储地形顶点法线的 Float32Array 缓冲区。 法线数据每 3 个元素为一组 (nx, ny, nz),对应各顶点的单位法线向量,用于光照计算。 注意:此为大缓冲区,直接修改前请确认操作意图,避免误覆盖。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetGetNormals |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
normals | 法线缓存 | 数据 | reference / Float32Array | 法线缓存(normals) 存储地形顶点法线的 Float32Array 缓冲区,每 3 个元素为一组 (nx, ny, nz)。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
获取高度缓存
读取 TerrainAsset 的 heights 属性,返回存储地形顶点高度的 Uint16Array 缓冲区。 每个元素对应一个顶点的原始高度值(归一化前),实际高度需乘以 TERRAIN_HEIGHT_FACTORY 并加上 TERRAIN_HEIGHT_BASE。 注意:此为大缓冲区,直接修改前请确认操作意图,避免误覆盖。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetGetHeights |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
heights | 高度缓存 | 数据 | reference / Uint16Array | 高度缓存(heights) 存储地形顶点原始高度的 Uint16Array 缓冲区。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
获取光照图大小
读取 TerrainAsset 的 lightMapSize 属性,表示每个地形块的光照贴图分辨率(像素数)。 光照贴图存储了预烘焙的光照信息,分辨率越高光影细节越丰富。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetGetLightMapSize |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
lightMapSize | 光照图大小 | 数据 | number | 光照图大小(lightMapSize) 每个地形块的光照贴图分辨率(像素)。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
获取块格尺寸
读取 TerrainAsset 的 tileSize 属性,表示每个地形格子(Tile)的世界空间大小(米)。 此值决定地形网格的整体缩放,较大值使地形显得宏大,较小值使地形细节更精细。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetGetTileSize |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
tileSize | 块格尺寸 | 数据 | number | 块格尺寸(tileSize) 每个地形格子的世界空间大小(米)。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
获取块数量
读取 TerrainAsset 的 blockCount 属性,同时输出 xBlocks(X 方向块数)和 yBlocks(Y 方向块数)便利分量。 blockCount 本身是 number[] 类型,分量拆分可减少数组操作节点的机械拆装成本。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetGetBlockCount |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
blockCount | 块数量 | 数据 | number / array | 块数量(blockCount) 地形块数量数组 [xBlocks, yBlocks],原始数组类型。 | - | 可选 |
xBlocks | X 块数 | 数据 | number | X 块数(xBlocks) X 方向的地形块数量(blockCount[0])。 | - | 可选 |
yBlocks | Y 块数 | 数据 | number | Y 块数(yBlocks) Y 方向的地形块数量(blockCount[1])。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
获取全部属性
一次性读取 TerrainAsset 的全部已节点化稳定信息,覆盖:版本号、块格尺寸、块数量(含分量)、权重图大小、光照图大小、高度/法线/权重缓存、层索引缓存、纹理层信息,以及派生的 I/J 方向顶点数。 等同于同时使用全部对应的单项 获取类节点,但只用一个节点即可,适合调试或需要完整状态快照的场景。 注意:TerrainAsset 是地形资产数据本体,不是场景中的 cc.Terrain 渲染组件。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetGetProperties |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
version | 版本号 | 数据 | number | 版本号 地形资产格式版本号。 | - | 可选 |
tileSize | 块格尺寸 | 数据 | number | 块格尺寸 每个地形格子的世界空间大小(米)。 | - | 可选 |
blockCount | 块数量 | 数据 | number / array | 块数量 地形块数量数组 [xBlocks, yBlocks]。 | - | 可选 |
xBlocks | X 块数 | 数据 | number | X 块数 X 方向地形块数量。 | - | 可选 |
yBlocks | Y 块数 | 数据 | number | Y 块数 Y 方向地形块数量。 | - | 可选 |
weightMapSize | 权重图大小 | 数据 | number | 权重图大小 每个地形块的混合权重贴图分辨率(像素)。 | - | 可选 |
lightMapSize | 光照图大小 | 数据 | number | 光照图大小 每个地形块的光照贴图分辨率(像素)。 | - | 可选 |
heights | 高度缓存 | 数据 | reference / Uint16Array | 高度缓存 Uint16Array 高度缓冲区。 | - | 可选 |
normals | 法线缓存 | 数据 | reference / Float32Array | 法线缓存 Float32Array 法线缓冲区。 | - | 可选 |
weights | 权重缓存 | 数据 | reference / Uint8Array | 权重缓存 Uint8Array 混合权重缓冲区。 | - | 可选 |
layerBuffer | 层索引缓存 | 数据 | number / array | 层索引缓存 number[] 纹理层索引数组。 | - | 可选 |
layerInfos | 纹理层信息 | 数据 | reference / array / TerrainLayerInfo | 纹理层信息 TerrainLayerInfo[] 纹理层配置数组。 | - | 可选 |
vertexCountI | I 方向顶点数 | 数据 | number | I 方向顶点数 地形 I 方向(X 轴)的顶点总数。 | - | 可选 |
vertexCountJ | J 方向顶点数 | 数据 | number | J 方向顶点数 地形 J 方向(Z 轴)的顶点总数。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
获取权重缓存
读取 TerrainAsset 的 weights 属性,返回存储地形混合权重的 Uint8Array 缓冲区。 每组 4 字节对应一个权重图像素的 RGBA 通道(r/g/b/a 分别对应 4 个纹理层的混合权重),总和应为 255。 注意:此为大缓冲区,直接修改前请确认操作意图,避免误覆盖。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetGetWeights |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
weights | 权重缓存 | 数据 | reference / Uint8Array | 权重缓存(weights) 存储地形混合权重的 Uint8Array 缓冲区,每 4 字节为一个权重图像素 (r,g,b,a)。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
获取权重图大小
读取 TerrainAsset 的 weightMapSize 属性,表示每个地形块的混合权重贴图分辨率(像素数)。 权重图决定每块地形上各纹理层的混合比例,分辨率越高,纹理过渡越细腻。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetGetWeightMapSize |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
weightMapSize | 权重图大小 | 数据 | number | 权重图大小(weightMapSize) 每个地形块的混合权重贴图分辨率(像素)。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
获取纹理层索引
按”块坐标 + 混合层序号”从 layerBuffer 中读取对应的纹理层索引,该索引指向 layerInfos 中的纹理配置。 参数说明:
- xBlock:X 方向的块坐标(从 0 开始,最大值 = xBlocks - 1)
- yBlock:Y 方向的块坐标(从 0 开始,最大值 = yBlocks - 1)
- layerId:混合层序号(通常 0–3,对应权重图 RGBA 4 个通道) 若输入坐标越界,返回 -1。 注意:这是对 layerBuffer 的查询读取,而不是对场景 Terrain 组件的查询。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetGetLayer |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
xBlock | X 块坐标 | 数据 | number | X 块坐标(xBlock) 要查询的块 X 坐标(从 0 开始)。 | 输入框 默认值:0 | 可选 |
yBlock | Y 块坐标 | 数据 | number | Y 块坐标(yBlock) 要查询的块 Y 坐标(从 0 开始)。 | 输入框 默认值:0 | 可选 |
layerId | 层序号 | 数据 | number | 层序号(layerId) 混合层序号(通常 0–3,对应权重图 RGBA 4 个通道)。 | 输入框 默认值:0 | 可选 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
layerIndex | 纹理层索引 | 数据 | number | 纹理层索引(layerIndex) layerBuffer 中该位置的纹理层索引,指向 layerInfos 中的配置。越界时返回 -1。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
获取纹理层信息
读取 TerrainAsset 的 layerInfos 属性,返回 TerrainLayerInfo[] 纹理层配置数组。 每个 TerrainLayerInfo 包含该层的纹理资产引用、UV 缩放等配置,决定地形表面各层的外观。 与 layerBuffer 中的索引配合,共同决定每块地形上显示哪些纹理以及如何混合。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetGetLayerInfos |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
layerInfos | 纹理层信息 | 数据 | reference / array / TerrainLayerInfo | 纹理层信息(layerInfos) TerrainLayerInfo[] 纹理层配置数组,包含各层纹理资产引用与 UV 缩放等配置。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
批量设置属性
按公开引脚语义批量修改 TerrainAsset 的属性:只有被显式公开(isPublic: true)的引脚才参与生成与游戏运行时写入,未公开的引脚不产生任何写入操作。 写入顺序:tileSize → blockCount → weightMapSize → lightMapSize → heights → normals → weights → layerBuffer → layerInfos。 重要:缓存字段(heights/normals/weights/layerBuffer/layerInfos)默认不公开,避免误覆盖大缓冲区;标量字段(tileSize/xBlocks/yBlocks/weightMapSize/lightMapSize)可按需公开。 注意:修改字段不会自动刷新场景中的 cc.Terrain 或 TerrainCollider,若需生效请显式重新设置消费端资产。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetSetProperties |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
tileSize | 块格尺寸 | 数据 | number | 块格尺寸(tileSize) 每个格子的世界空间大小(米)。公开后才写入。 | 输入框 默认值:1 | 可选 默认隐藏 |
xBlocks | X 块数 | 数据 | number | X 块数(xBlocks) X 方向地形块数量,与 yBlocks 一起组装为 blockCount。公开后才写入。 | 输入框 默认值:1 | 可选 默认隐藏 |
yBlocks | Y 块数 | 数据 | number | Y 块数(yBlocks) Y 方向地形块数量,与 xBlocks 一起组装为 blockCount。公开后才写入。 | 输入框 默认值:1 | 可选 默认隐藏 |
weightMapSize | 权重图大小 | 数据 | number | 权重图大小(weightMapSize) 每个地形块的混合权重贴图分辨率(像素)。公开后才写入。 | 输入框 默认值:128 | 可选 默认隐藏 |
lightMapSize | 光照图大小 | 数据 | number | 光照图大小(lightMapSize) 每个地形块的光照贴图分辨率(像素)。公开后才写入。 | 输入框 默认值:128 | 可选 默认隐藏 |
heights | 高度缓存 | 数据 | reference / Uint16Array | 高度缓存(heights) Uint16Array 高度缓冲区。默认不公开,公开后才写入,避免误覆盖。 | - | 可选 默认隐藏 |
normals | 法线缓存 | 数据 | reference / Float32Array | 法线缓存(normals) Float32Array 法线缓冲区。默认不公开,公开后才写入,避免误覆盖。 | - | 可选 默认隐藏 |
weights | 权重缓存 | 数据 | reference / Uint8Array | 权重缓存(weights) Uint8Array 混合权重缓冲区。默认不公开,公开后才写入,避免误覆盖。 | - | 可选 默认隐藏 |
layerBuffer | 层索引缓存 | 数据 | number / array | 层索引缓存(layerBuffer) number[] 纹理层索引数组。默认不公开,公开后才写入。 | - | 可选 默认隐藏 |
layerInfos | 纹理层信息 | 数据 | reference / array / TerrainLayerInfo | 纹理层信息(layerInfos) TerrainLayerInfo[] 纹理层配置数组。默认不公开,公开后才写入。 | - | 可选 默认隐藏 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产(透传) 把当前操作的 TerrainAsset 实例原样传出,便于将多个配置节点串联在一起。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
设置层索引缓存
设置 TerrainAsset 的 layerBuffer 属性,也就是纹理层索引数组。 索引指向 layerInfos 中的纹理层配置。 注意:修改此字段不会自动刷新场景中的 cc.Terrain 或 TerrainCollider,若需生效请显式重新设置消费端资产。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetSetLayerBuffer |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
layerBuffer | 层索引缓存 | 数据 | number / array | 层索引缓存(layerBuffer) number[] 纹理层索引数组,无内联控件,必须连接上游数组引用。 | - | 可选 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产(透传) 把当前操作的 TerrainAsset 实例原样传出,便于将多个配置节点串联在一起。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
设置法线缓存
设置 TerrainAsset 的 normals 属性(Float32Array 法线缓冲区)。 法线数据每 3 个元素为一组 (nx, ny, nz),表示单位法线向量。 注意:修改此字段不会自动刷新场景中的 cc.Terrain 或 TerrainCollider,若需生效请显式重新设置消费端资产。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetSetNormals |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
normals | 法线缓存 | 数据 | reference / Float32Array | 法线缓存(normals) Float32Array 法线缓冲区,无内联控件,必须连接上游引用。 | - | 可选 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产(透传) 把当前操作的 TerrainAsset 实例原样传出,便于将多个配置节点串联在一起。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
设置高度缓存
设置 TerrainAsset 的 heights 属性(Uint16Array 高度缓冲区)。 该缓冲区存储所有顶点的原始高度值(归一化前)。 注意:修改此字段不会自动刷新场景中的 cc.Terrain 或 TerrainCollider,若需生效请显式重新设置消费端资产。写入大缓冲区时请确认数据长度与地形配置匹配。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetSetHeights |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
heights | 高度缓存 | 数据 | reference / Uint16Array | 高度缓存(heights) 存储地形顶点原始高度的 Uint16Array 缓冲区,无内联控件,必须连接上游引用。 | - | 可选 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产(透传) 把当前操作的 TerrainAsset 实例原样传出,便于将多个配置节点串联在一起。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
设置光照图大小
设置 TerrainAsset 的 lightMapSize 属性(每个地形块的光照贴图分辨率,单位像素)。 注意:修改此字段不会自动刷新场景中的 cc.Terrain 或 TerrainCollider,若需生效请显式重新设置消费端资产。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetSetLightMapSize |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
lightMapSize | 光照图大小 | 数据 | number | 光照图大小(lightMapSize) 每个地形块的光照贴图分辨率(像素)。 | 输入框 默认值:128 | 可选 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产(透传) 把当前操作的 TerrainAsset 实例原样传出,便于将多个配置节点串联在一起。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
设置块格尺寸
设置 TerrainAsset 的 tileSize 属性(每个格子的世界空间大小,单位米)。 注意:修改此字段不会自动刷新场景中的 cc.Terrain 组件或 TerrainCollider,若需生效请显式重新设置消费端资产。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetSetTileSize |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
tileSize | 块格尺寸 | 数据 | number | 块格尺寸(tileSize) 每个地形格子的世界空间大小(米)。 | 输入框 默认值:1 | 可选 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产(透传) 把当前操作的 TerrainAsset 实例原样传出,便于将多个配置节点串联在一起。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
设置块数量
通过 xBlocks(X 方向块数)和 yBlocks(Y 方向块数)设置 TerrainAsset 的 blockCount 属性。 游戏运行时内部将两个分量组装为 [xBlocks, yBlocks] 数组后写入 blockCount。 注意:修改此字段不会自动刷新场景中的 cc.Terrain 或 TerrainCollider,若需生效请显式重新设置消费端资产。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetSetBlockCount |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
xBlocks | X 块数 | 数据 | number | X 块数(xBlocks) X 方向的地形块数量。 | 输入框 默认值:1 | 可选 |
yBlocks | Y 块数 | 数据 | number | Y 块数(yBlocks) Y 方向的地形块数量。 | 输入框 默认值:1 | 可选 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产(透传) 把当前操作的 TerrainAsset 实例原样传出,便于将多个配置节点串联在一起。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
设置权重缓存
设置 TerrainAsset 的 weights 属性(Uint8Array 混合权重缓冲区)。 每组 4 字节对应一个权重图像素的 RGBA 通道,各通道分别对应 4 个纹理层的混合权重,总和应为 255。 注意:修改此字段不会自动刷新场景中的 cc.Terrain 或 TerrainCollider,若需生效请显式重新设置消费端资产。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetSetWeights |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
weights | 权重缓存 | 数据 | reference / Uint8Array | 权重缓存(weights) Uint8Array 混合权重缓冲区,无内联控件,必须连接上游引用。 | - | 可选 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产(透传) 把当前操作的 TerrainAsset 实例原样传出,便于将多个配置节点串联在一起。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
设置权重图大小
设置 TerrainAsset 的 weightMapSize 属性(每个地形块的混合权重贴图分辨率,单位像素)。 注意:修改此字段不会自动刷新场景中的 cc.Terrain 或 TerrainCollider,若需生效请显式重新设置消费端资产。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetSetWeightMapSize |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
weightMapSize | 权重图大小 | 数据 | number | 权重图大小(weightMapSize) 每个地形块的混合权重贴图分辨率(像素)。 | 输入框 默认值:128 | 可选 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产(透传) 把当前操作的 TerrainAsset 实例原样传出,便于将多个配置节点串联在一起。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
设置纹理层信息
设置 TerrainAsset 的 layerInfos 属性(TerrainLayerInfo[] 纹理层配置数组)。 每个 TerrainLayerInfo 包含该层的纹理资产引用、UV 缩放等配置。 注意:修改此字段不会自动刷新场景中的 cc.Terrain 或 TerrainCollider,若需生效请显式重新设置消费端资产。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetSetLayerInfos |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产 这里需要连接一个已经加载好的 TerrainAsset 实例。 该端口没有”选择资产”按钮,请先使用以下方式获取地形资产实例: - 加载资产:把”类型”选为 TERRAIN_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 TerrainAsset。 - 新建地形资产:创建一个空地形资产实例。 注意:TerrainAsset 是地形资产数据本体(资产容器),不是场景中的 cc.Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新消费端。 | - | 必填 |
layerInfos | 纹理层信息 | 数据 | reference / array / TerrainLayerInfo | 纹理层信息(layerInfos) TerrainLayerInfo[] 纹理层配置数组,无内联控件,必须连接上游引用。 | - | 可选 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 地形资产(透传) 把当前操作的 TerrainAsset 实例原样传出,便于将多个配置节点串联在一起。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
新建地形资产
在游戏运行时创建一个全新的空地形资产实例。 注意:空实例不包含任何地形数据,高度/法线/权重缓存为空,需要通过 设置类节点或连接已有地形资产使用。 若要加载已有地形资产文件,请改用 加载资产(类型选 TERRAIN_ASSET)。 重要:TerrainAsset 是地形资产数据本体,不是场景中的 Terrain 渲染组件,也不是 TerrainCollider 物理碰撞组件。修改 TerrainAsset 字段不会自动刷新任何消费端组件。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | terrainAssetCreate |
| 分类 | 资产 |
| 二级分类 | 地形 |
| 分组 | TerrainAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
terrainAsset | 地形资产 | 数据 | cc.Asset / TerrainAsset | TerrainAsset 实例 新建的空地形资产实例,不包含任何地形数据。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。