godot2D游戏教程系列二(9)

前言:

完成目标

成功为墙体瓦片添加了真实的碰撞体,让玩家无法穿墙。

具体实现了:

  • 记得保存工程(避免白做)
  • 给瓦片地图添加物理层
  • 将绘制属性切换为"物理层"
  • 手动为每块墙体瓦片绘制多边形碰撞形状
  • 开启网格吸附(数值8),让碰撞点更精准
  • 为不同墙体瓦片分别设置碰撞体
  • 启动游戏测试,确认角色会被墙挡住
  • 调整玩家影子透明度,让画面更自然
  • 完成外角墙体的碰撞绘制(内角暂未处理)

最终效果:

现在墙不仅"看起来是墙",而且真的能挡住玩家,游戏从"画面展示"升级为"具备基础物理碰撞"的可交互场景。

  • 实现过程;
  • 我们在上一篇文章中将地图的大致碰撞形状都进行绘画了,但是当我我们的玩家角色走到角落还是会被卡住,这个时候我们就需要来绘制一下角落来了,我们给角落绘制一个三角形。我们选取那个有角角的图块(瓦片)
  • 然后利用多边形工具画一个三角形,小角落画小三角1*1,大角落就画1*2,然后记得画的时候,要随时保存,因为笔者在画画的时候闪退了,很惨了属于是
  • 画完三角形之后的样子就是这样子的,酷酷画就完事了,记得一定要随时保存,笔者闪退了2次笑死。然后在测试的时候需要haul一个更复杂的测试地图,让玩家角色去跑动来测试
  • 然后接下来让我们来搞定入口台阶的瓷砖铺设
  • 我们先用在地形选项卡那里选择使用矩形工具给玩家画一个大平台
  • 然后我们切换回图块选项卡选择我们的台阶瓦片点上去
  • 然后我们会发现我们的右边被墙挡住了,这个时候我们使用橡皮擦处理一下就好了


*

  • 然后我们需要给入口台阶添加碰撞形态
  • 然后我们启动游戏,全屏并且点击一下上面的扩展图标,这样子一看我们绘制的瓦片就大功告成啦
  • 然后我们来移动一下这一块瓦片地图到我们的草地中心,我们不要移动节点位置,而是选择瓦片地图的选择工具进行移动,我们点击选择工具之后框选我们创造的瓦片地图然后进行移动就好
  • 然后我们将我们的这个瓦片地图图层节点重命名为TileMapLayer_Platform
相关推荐
观书喜夜长3 小时前
每日一练:攻防世界「easyupload文件上传漏洞」详细解析与防御
学习·web安全·网络安全
廋到被风吹走3 小时前
持续学习方向 低代码/平台工程
学习·低代码
猹叉叉(学习版)3 小时前
【ASP.NET CORE】 6. 中间件
数据库·笔记·后端·中间件·c#·asp.net·.netcore
·中年程序渣·3 小时前
Spring AI Alibaba入门学习(一)
人工智能·学习·spring
Engineer邓祥浩3 小时前
JVM学习笔记(1) 总述
jvm·笔记·学习
2401_855937813 小时前
java蓝桥小记
笔记
y = xⁿ4 小时前
【从零开始学习Redis|第五篇】Redis 常见数据类型和应用场景
数据库·redis·学习·缓存
2301_800895104 小时前
二分学习--备战蓝桥杯版h
学习
Leventure_轩先生4 小时前
[TouhouRL]1. The Begining of Touhou Project RL,从简单贪吃蛇游戏的侵入式强化学习开始
游戏