godot2D游戏教程系列二(9)

前言:

完成目标

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

具体实现了:

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

最终效果:

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

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


*

  • 然后我们需要给入口台阶添加碰撞形态
  • 然后我们启动游戏,全屏并且点击一下上面的扩展图标,这样子一看我们绘制的瓦片就大功告成啦
  • 然后我们来移动一下这一块瓦片地图到我们的草地中心,我们不要移动节点位置,而是选择瓦片地图的选择工具进行移动,我们点击选择工具之后框选我们创造的瓦片地图然后进行移动就好
  • 然后我们将我们的这个瓦片地图图层节点重命名为TileMapLayer_Platform
相关推荐
双眼鈹15 分钟前
周报8.31
笔记·学习
打团从来人不齐42 分钟前
Linux服务器搭建笔记-008:台式机共享WIFI
linux·服务器·笔记
疯狂打码的少年1 小时前
【数据库技术】SQL概述与数据定义(DDL:CREATE/DROP/ALTER)
数据库·笔记·sql·oracle
硬件yun1 小时前
学功能安全
学习·安全·汽车
火眼金睛炼单词1 小时前
图像记单词:视觉化学习能否破解英语记忆难题
学习
一条破秋裤1 小时前
STM32 学习笔记:GPIO 输出原理与硬件设计
笔记·stm32·学习
andrsted1 小时前
作业发布、课堂检测和错题讲评,用一个小程序完成
学习·微信小程序·小程序·学习方法
SmalBox1 小时前
【动态着色】Unity 实现消融效果
unity3d·游戏开发·图形学
摇滚侠2 小时前
《SpringBoot 3:入门与应用实战》第 9 章 使用 WebMvc 开发进阶 阅读笔记 24
spring boot·笔记·后端
摇滚侠2 小时前
《SpringBoot 3:入门与应用实战》第 9 章 使用 WebMvc 开发应用 阅读笔记 22
javascript·spring boot·笔记