TiledMap 组件参考

TiledMap(地图)用于在游戏中显示 TMX 格式的地图。

点击 属性检查器 下方的 添加组件 按钮,然后从 渲染组件 中选择 TiledMap,即可添加 TiledMap 组件到节点上。

TiledMap 的脚本接口请参考 TiledMap API。

TiledMap 属性

属性

功能说明

Tmx Asset

指定 .tmx 格式的地图资源

详细说明

添加 TiledMap 组件之后,从 资源管理器 中拖拽一个 .tmx 格式的地图资源到 Tmx Asset 属性上就可以在场景中看到地图的显示了。

在 TiledMap 组件中添加了 Tmx Asset 属性后,会在节点中自动添加与地图中的 Layer 对应的节点。这些节点都添加了 TiledLayer 组件。请勿删除这些 Layer 节点中的 TiledLayer 组件。

TiledMap 组件不支持 mapLoaded 回调,在 start 函数中可正常使用 TiledMap 组件。

TiledLayer 与节点遮挡

TiledLayer 组件会将添加到地图层的节点坐标转化为地图块行列坐标。当按行列顺序渲染地图层中的地图块时,如果该地图块的行列中存在节点,那么将会中断渲染地图块转而渲染节点。当地图块中的节点渲染完毕后,会继续渲染地图块。以此实现节点与地图层相互遮挡关系。

注意:该遮挡关系只与节点的坐标有关,与节点的大小无关。

下面通过一个范例来介绍 TiledLayer 如何与节点相互遮挡。

在场景中新建一个节点并添加 TiledMap 组件,设置好 TiledMap 组件属性后会自动生成带有 TiledLayer 组件的节点(即地图层)。

创建 预制资源 以便在场景中实例化出多个节点。

在 资源管理器 中新建一个 JavaScript 脚本,编写组件脚本。脚本代码如下:

cc.Class({

extends: cc.Component,

properties: {

// 用于实例化节点的预制体

prefab:{

type: cc.Prefab,

default: null,

},

// TiledLayer 组件

tiledLayer: {

type: cc.TiledLayer,

default: null,

},

},

start () {

// 开发者可根据需求设置节点位置

let posArr = [cc.v2(-249, 96), cc.v2(-150, 76), cc.v2(-60, 54), cc.v2(-248, -144), cc.v2(-89, -34)];

for (let i = 0; i < posArr.length; i++) {

let shieldNode = cc.instantiate(this.prefab);

// 可任意设置节点位置,这里仅作为示范

shieldNode.x = posArr[i].x;

shieldNode.y = posArr[i].y;

// 调用 TiledLayer 组件的 addUserNode 方法,可将节点添加到对应的地图层中,并与地图层产生相互遮挡关系。

this.tiledLayer.addUserNode(shieldNode);

}

},

});

将脚本组件挂载到 Canvas 节点上,即将脚本拖拽到 Canvas 节点的 属性检查器 中。再将 层级管理器 中自动生成的带有 TiledLayer 组件的节点以及 资源管理器 中的预制资源拖拽至脚本组件对应的属性框中,然后保存场景。

点击编辑器上方的预览按钮,即可看到节点与地图层相互遮挡的效果。关于代码可参考 ShieldNode 范例。

若想移除地图层中的节点,调用 TiledLayer 的 removeUserNode 方法即可。

TiledMap 关闭裁剪

cc.macro.ENABLE_TILEDMAP_CULLING = false;

如果需要旋转地图或者把地图置于 3D 相机中,则需要关闭裁剪。另外,如果地图块不是非常多,如小于 5000 块,那么关闭裁剪还能减少 CPU 的运算负担,GPU 直接使用缓存进行渲染。

tiledmap 图块属性_TiledMap 组件参考相关推荐

  1. tiledmap 图块属性_tiledmap 可以在图块层的指定格子上添加Sprite吗

    constructor(mapname:string, x:number, y:number){ super(); //显示登陆界面 this.tMap = new Laya.TiledMap() t ...

  2. tiledmap 图块属性_Tiled Editor 图块的两种导入方式

    一.图块集图块的导入. 打开或者创建地图后,新建 新图块. 弹出新图块面板 图块类型选择 "基于图块集图块",一定要选择"嵌入地图",否则需要另存为其他类型的文 ...

  3. RPG游戏 01-人物行走和地图图块

    要开发一个游戏,地图是首先应该考虑的,我这里使用的是tiled来编辑地图.tiled对于一般的游戏开发还行,相对通用,不过也没有那么强的针对性.所以在开发游戏时要对从tiled解析的内容里再在程序中进 ...

  4. vb外部调用autocad_AutoCAD教程之图块的各种相关操作和概念

    制图过程中,有时常需要插入某些特殊符号供图形中使用,此时就需要运用到图块及图块属性功能.利用图块与属性功能绘图,可以有效地提高作图效率与绘图质量.也是绘制复杂图形的重要组成部分. 一.图块的特点 图块 ...

  5. (Tiled官方文档翻译)第五节:图块集的编辑

    编辑一个tileset(图块集)需要将图块集显式地打开.内部的图块集可以通过文件菜单来打开,但是通常是通过点击图块集窗口下方的"编辑图块集"小按钮来快速打开编辑图块集. 5.1 两 ...

  6. Unity自定义UI组件(十一) 雷达图、属性图

    前言 借用梦想世界宠物属性图 想必大家都在游戏中见过属性图用于展示多种属性的数值,可以较为直观的对比某种属性的缺陷或者是哪种属性有优势.在三维可视化领域也会遇到类似的属性对比,用属性图来展示最为合适. ...

  7. lisp把选集转成表_晓东CAD家园-论坛-LISP/VLISP程序库-[LISP程序]:把text转为属性图块 - Powered by Discuz!...

    ;;把text转为属性图块 ;;By LUCAS (defun C:C_DEF (/ HOLDECHO HOLDBLIP HOLDREQ SS SSS N A AA A1 A73 HH LST_210 ...

  8. idea 编写javafx_用JavaFX编写图块引擎

    idea 编写javafx 随着JavaFX嵌入式版本的问世,我们的框架对于游戏开发变得越来越有趣,因为我们现在可以瞄准平板电脑和智能手机等小型消费类设备. 因此,我决定对JavaFX进行更多的游戏编 ...

  9. 用JavaFX编写图块引擎

    随着JavaFX嵌入式版本的问世,我们的框架对于游戏开发变得越来越有趣,因为我们现在可以瞄准平板电脑和智能手机等小型消费类设备. 因此,我决定对JavaFX进行更多的游戏编写实验. 这次,我想使用Ca ...

  10. javafx 教程_用JavaFX编写图块引擎

    javafx 教程 随着JavaFX嵌入式版本的问世,我们的框架对于游戏开发变得越来越有趣,因为我们现在可以瞄准平板电脑和智能手机等小型消费类设备. 因此,我决定对JavaFX进行更多的游戏编写实验. ...

最新文章

  1. Python descriptor
  2. java前端div浮动靠左_前端进阶第5周打卡题目汇总
  3. 互联网1分钟 |1214
  4. java 集合迭代器_Java中的集合迭代器
  5. 商家为什么要接受BCH支付?
  6. Tensorflow——Tensorboard可视化
  7. Java并发——Synchronized关键字和锁升级,详细分析偏向锁和轻量级锁的升级
  8. 申屠青春对“链”和“币”的再思考
  9. 云计算对21世纪IT人的挑战
  10. 基于Matlab的DSB调制解调,课程设计(论文)-基于MATLAB的DSB调制与解调分析.doc
  11. Ubuntu 20.04/21.04 不能检测到外部HDMI显示器
  12. 用料扎实的全模组电源,还有十年换新支持,安钛克HCG 850体验
  13. phpspreadsheet 中文文档(三) 计算引擎
  14. 欧盟 GDPR 通用数据保护条例正式生效后,各行业影响分析
  15. 大数据培训课程之Flume拓扑结构大数据培训课程之Flume拓扑结构
  16. LeetCode 1344. 时钟指针的夹角
  17. Python自学笔记——基础篇
  18. Microsoft Word 插件开发——Word外接应用程序开发
  19. PC端——如何屏蔽掉某网站-极度简洁-继hosts后的全新改良版~!
  20. 荣耀手机点击android键,荣耀10虚拟按键可以设置吗?荣耀10怎么设置虚拟按键或悬浮球?...

热门文章

  1. UE4 C++头文件
  2. 计算机office demo,办公软件应用(Office2007)中级_DEMO盘-2013
  3. Waveform Audio 驱动(Wavedev2)之:WAV API模拟 1
  4. Delphi 11.1 Alexandria 下载地址集合(包括以前版本)
  5. 简述结构化程序设计、面向对象程序设计的概念及其区别
  6. SQL Server2005下载地址
  7. 【已测】asp留言板,留言转发到手机上
  8. 成功解决:loadrunner提示计算机上缺少vc2005_sp1_with_atl_fix_redist
  9. 最全中文停用词表(可直接复制)
  10. 如何用ASP读写TXT文本文件中的内容