当前位置: 首页  >  >资讯 > > 正文

【环球新视野】「Unity」2DTileMap —— 能在运行中切换某位置的瓦片图片的规则瓦片(完)

2023-05-04 02:07:04    来源:哔哩哔哩

大家好,这里是秋野

这一篇将会是这个功能的完结


(资料图片)

虽然这个东西具体要应用到某个游戏里面还需要修改和优化

而这篇文章更多是给自己的一个记录与思路整理分享

多谢大家的支持

↓上一篇链接

接下来继续上篇的内容

咱们在上一篇的结尾部分定义了用于保存StyleTile的数据类型

现在在使用它们之前先把自动化保存他们的程序写了

也就是咱们要继续改我们的生成器了

这里新增了两个UI组件,并且优化了一下按键的逻辑

然后就是CreateStyleTileList()这个逻辑

其实跟之前快速生成TilingRule的方法是类似的,只是没那么复杂

具体效果如下

那么,我们魔改RuleTile就差不多完成了

接下来就是运行时的代码了

首先先添加一个StyleLayer

然后先用图文理顺逻辑

我们要切换成斜边的本身是一个转角

我们之前就把转角的方向记录下来了

在上面这个图的转角方向是(1,1,0)

然后我们要在蓝色的格子的坐标实际上就是

转角方向的x和y值拆开减去红色的位置值

就能获得这两个蓝色Tile的坐标

然后我们需要加遮盖的Sprite方向就是红色Tile的转角方向

那么咱们先写一个核心的方法

用于更新styleLayer上面的Tile的逻辑

为了避免报错等一系列bug

这里用了很多if,具体作用看一看注释

然后咱们再写一个刷新四周的styletile的方法

然后在修改一下之前的

UpdateAroundTileAtBaseTiles(Vector3Int pos)

SwitchTile(Vector3Int pos)

修改这些代码后就已经可以在运行时去随便画画写写修改了

但目前这个功能只能在运行时运作

思路分析与整理就到这里了

之后可能会更新一些关于Tilemap的应用

如果有更好的优化方案,欢迎在评论区中讨论

如果能帮助到你,可以给个一键三连

那么,下次再见

关键词:

«上一篇:焦点简讯:静力压桩机图片(静力压桩机) »下一篇: 最后一页