[Unity学习日志]用Collider2D.IsTouchingLayers()进行碰撞检测

这篇具有很好参考价值的文章主要介绍了[Unity学习日志]用Collider2D.IsTouchingLayers()进行碰撞检测。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

复健,跟麦扣老师的教程注意到的新方法

Unity2018教程2D入门:07 跳跃动画 LayerMask_哔哩哔哩_bilibili

目的是检测玩家是否落地,然后切换动画

自己的实现就是简单的检测速度:

if (m_rb.velocity.y > -0.1)
{
    anim.SetBool("Falling", false);
}

麦扣老师的方法:检测玩家是否与地面这个Layer产生碰撞,产生碰撞即落地

具体步骤:

1.将Tilemap图层设置为Ground

[Unity学习日志]用Collider2D.IsTouchingLayers()进行碰撞检测

2.获取LayerMask

LayerMask ground;
ground = 1 << LayerMask.NameToLayer("Ground");

(这边记得要用移位运算给LayerMask赋值)

3.使用UnityAPI:Collider2D.IsTouchingLayers()进行碰撞检测

if (m_col.IsTouchingLayers(ground))
{
    anim.SetBool("Falling", false);
}

优化方法:

平时开发时应该会用向下的射线检测是否落地(相比之下可以排除墙体等的影响)

但这个API在某些特定情况下应该有用...文章来源地址https://www.toymoban.com/news/detail-420988.html

到了这里,关于[Unity学习日志]用Collider2D.IsTouchingLayers()进行碰撞检测的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 详解Unity中的车轮碰撞器Wheel Collider

    碰撞体组件定义了物体的物理性状,Unity中有一系列基本碰撞体,我们可以使用它们组合成任意形状,但除了基本碰撞体之外,Untiy还提供了诸如车轮(Wheel)、网格(Mesh)、地形(Terrain)等碰撞器,就比如Wheel Collider,该碰撞器用以实现车辆模拟,它可以模型车辆的前进后退,刹车,

    2023年04月09日
    浏览(63)
  • 【unity3D】Collider碰撞器组件

    💗 未来的游戏开发程序媛,现在的努力学习菜鸡 💦本专栏是我关于游戏开发的学习笔记 🈶本篇是unity的Collider碰撞器组件 名称 说明 Box Collider 盒装碰撞器 Box Collider 2D 2D盒装碰撞器 Capsule Collider 胶囊碰撞器 Capsule Collider 2D 2D胶囊碰撞器 Circle Collider 圆形碰撞器 Composite Collid

    2024年02月06日
    浏览(55)
  • 【Unity】2D骨骼绑定·一(学习笔记)

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 在大三学习王乐然老师指导的可视媒体开发实践中,使用Unity在动画,视频,骨骼绑定等内容上的学习遇到了瓶颈期,通过一系列的学习,使我在Unity的使用上有了更进一步的了解。 ** 不同格式之间的图

    2024年01月17日
    浏览(36)
  • Unity学习笔记---2D光照渲染、美术、动画

    Unity 提供三个渲染管线 :一个内置渲染管线和两个可编程渲染管线 (SRP)。两个 SRP 为通用渲染管线 (URP) 和高清渲染管线 (HDRP)。URP 适用于所有平台,而 HDRP 则 旨在用于针对高端 PC 和主机的游戏。 注意 :如果在 Unity 2021 或更高版本中启动一个新项目,则称为 2D (U

    2024年02月09日
    浏览(41)
  • Unity3d bounds包围盒 和collider碰撞器区别

    Bounds 叫作外包围盒、边界框、外扩矩形. 是struct 结构体。 而我们获得Bounds的主要途径有三种:Render,Collider,Mesh。 Render.bounds 世界坐标 Collider.bounds 世界坐标 Mesh.bounds  本地坐标 碰撞器的方框始终跟着模型旋转移动,缩放跟着模型的,只要模型不缩放它也不缩放 Bounds 跟随模型移

    2024年02月02日
    浏览(72)
  • Unity2D学习笔记-Tilemap

    tilemap算是接触了几次,但是无论是看视频还是看文章都一知半解,这次把编辑地图的开始步骤搞清楚。 首先要知道tilemap是做什么的。 这里提到的Tilemap其实不止是Tilemap:Tilemap本身是地图编辑器(虽然我更倾向于理解为“场景”,不过编辑地图才是核心)。之前学的印象是,

    2023年04月09日
    浏览(49)
  • Unity学习笔记(7) Unity2D骨骼动画制作流程

    用骨骼动画最大的好处就是方便之后做换装系统。 无论对3Dor2D游戏都是这样的。 这篇博文记录一下2D骨骼动画的制作流程,参考b站麦扣的系列教程: https://space.bilibili.com/370283072/channel/seriesdetail?sid=211996 用PS做一个将人物各个部件(骨骼)都分解开来的人物模型。 导出时注意

    2023年04月09日
    浏览(54)
  • 【Unity源码学习】遮罩:Mask 和 RectMask2D 学习

    UGUI的裁切分为Mask和Mask2D两种 Mask原理分析 RectMask2D原理分析 RectMask2D和Mask的性能区分 Mask:IMaskable,IMaterialModifier 我们先来看Mask。它可以给Mask指定一张裁切图裁切子元素。我们给Mask指定了一张圆形图片,那么子节点下的元素都会被裁切在这个圆形区域中。 Mask的实现原理:

    2024年02月12日
    浏览(61)
  • 【学习笔记】Unity ontriggerenter2d不触发问题

    最近学习的时候遇到不触发碰撞检测的问题,搜了很多都不是,后来还是没有解决,不过我有另一个解决的方案 先说一下碰撞的条件: 两个都是碰撞器,其中一个有刚体 碰撞器勾选is Trigger 方法: 第一步:把2D碰撞器都换成3D的(什么形状碰撞器都行) 第二步:把OnTriggerE

    2024年02月16日
    浏览(35)
  • Unity学习4:如何实现2D图像跟踪(涂色类AR项目实践1)

    跟踪图像管理器是一种可跟踪管理器,执行二维图像跟踪。 跟踪图像管理器为环境中检测到的每个图像创建游戏对象。在可以检测到图像之前,必须指示管理器查找编译到 参考图像库 中的一组参考图像。 何为参考图像库(Reference Image library)? 参考图像库用来 存储一系列

    2024年04月27日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包