godot2D游戏教程系列二(8)

前言:

完成目标

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

具体实现了:

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

最终效果:

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

  • 实现过程:
  • 在这里笔者遇到了自己忘记保存关电脑的事情,所以朋友们记得一定要按保存啊!!!!
  • 我们需要先创建一个物理层,我们到瓦片地图层节点的检查中添加元素
  • 我们继续使用绘制模式,然后切换绘制属性为物理层,这里物理层默认的碰撞形状是正方形。不是完全匹配我们的瓦片的,所以我们要进行手动根据瓦片修改一下
  • 我们需要自定义一下这个碰撞形态与墙体轮廓相匹配,所以我们点集绘制模式旁边的那个笔的图标也就是拾取工具,我们选取一下左下角的瓦片,这样子我们的碰撞形态的本体就是我们选取的瓦片
  • 然后我们点击那个扩展的图标,进行放大视图


*

  • 然后我们需要在这个图块上绘制碰撞形状,我们启用网格吸附模式,并且改为8


*

  • 这样子我们创建多边形的时候,这个点总是会吸附到这个网格上。然后我们点击网格来创建第一个碰撞形状,我们选择添加多边形工具
  • 接着我们依次点击就好了,顺时针依次点击,注意这里撤回上一步的话是直接退回到了新建物理层了,所以要注意一下
  • 绘制好之后我们回到瓦片那里,我们只需要轻点一下我们先前选取的瓦片就可以设置好它的碰撞形态了
  • 接着我们选取第二块瓦片来设置它的碰撞体形状


*

  • 继续操作画第三块瓦片
  • 继续操作画第四块瓦片


*

  • 然后你可以发现我们画的这后面三块瓦片就连起来的,然后我们放置一下瓦片,并且左上角调试那里显示碰撞区域再进行启动游戏
  • 然后我们就看到那个墙的碰撞形状,玩家角色也是被挡住了
  • 这里我们觉得玩家角色的影子太实了。我们让影子变的透明一些,我们来到玩家场景的2d阴影精灵节点点击左边检查器的可见性Visibility属性,点击Modulate然后设置透明度为150
  • 接下来我们继续绘制瓦片的物理层,把所有的外角都进行绘制一下就是这个样子(这里是还没处理内角),提示你画完左边的就有些碰撞形状可以复用到右边那里
相关推荐
xianrenli389 分钟前
水肺潜水学习
学习
ACP广源盛1392462567311 分钟前
USB3.0 高速信号切换方案评估,LH3412 @ACP双通道差分开关硬件选型笔记
笔记·硬件架构·硬件工程·国产芯片·开关
自不量力的A同学43 分钟前
Goldfish Scheme v18.11.39 发布了:迈向现代宏系统与多核并发
笔记
海里的果1 小时前
论文阅读笔记-<Alpamayo-R1 >
论文阅读·笔记
凌云若寒1 小时前
BarTender提示#807错误:无法在拥有其他许可证的Licensing Service上激活节点锁定的 Professional 版许可证 的解决办法
运维·服务器·前端·学习·软件需求
浅念-2 小时前
动态规划专题:斐波那契数列模型 + 网格路径DP(LeetCode例题全解析)
笔记·算法·leetcode·面试·职场和发展·动态规划·推荐算法
爱吃苹果的日记本2 小时前
离散数学第七课
学习·离散数学
迪丽热爱2 小时前
多媒体应用31-914(计算机硬件与体系结构)
学习
avi91112 小时前
Unity 介绍一个开源免费图片工具 Tropy 科研.org推荐 - 代表作
游戏·开源·aigc·tropy·图片管理
dadaobusi3 小时前
学习:BPU
学习