当前位置: 首页 > news >正文

网站外连平台推广公众平台营销

网站外连,平台推广公众平台营销,盐城网站优化,成都设计公司税率Unity自学之旅03 Unity自学之旅03📝 碰撞体 Collider 基础定义与作用常见类型OnCollisionEnter 事件碰撞触发器 🤗 总结归纳 Unity自学之旅03 📝 碰撞体 Collider 基础 定义与作用 定义:碰撞体是游戏中用于检测物体之间碰撞的组…

Unity自学之旅03

  • Unity自学之旅03
  • 📝 碰撞体 Collider 基础
      • 定义与作用
      • 常见类型
      • OnCollisionEnter 事件
      • 碰撞触发器
  • 🤗 总结归纳

Unity自学之旅03

📝 碰撞体 Collider 基础

定义与作用

  • 定义:碰撞体是游戏中用于检测物体之间碰撞的组件或区域。它通常是一个虚拟的形状,附加在游戏对象上,用于定义该对象的碰撞边界和物理交互范围。
  • 作用:主要用于实现游戏中的物理交互效果,比如当两个游戏对象的碰撞体发生重叠时,游戏引擎可以检测到这种碰撞事件,并根据设定执行相应的操作,如触发伤害计算、推动物体、触发机关、播放碰撞音效等,使游戏中的物体之间能够产生真实或符合游戏逻辑的交互。

常见类型

  • 盒状碰撞体(Box Collider):形状为长方体,适用于具有规则矩形外形的物体,如建筑物、箱子等。在 2D 游戏中,它是一个矩形区域,在 3D 游戏中则是一个长方体空间。
  • 球形碰撞体(Sphere Collider):呈球形,常用于模拟具有圆形外形的物体的碰撞,如球类、角色的头部等。在计算碰撞时,以球心和半径来确定碰撞范围。
  • 胶囊碰撞体(Capsule Collider):类似胶囊形状,一般用于角色的身体碰撞检测,它可以很好地适应角色的移动和旋转,能更自然地与其他物体发生碰撞交互。
  • 多边形碰撞体(Polygon Collider):可以根据物体的实际外形自定义碰撞边界,由多个顶点组成多边形。对于形状不规则的物体,如树叶、不规则的石头等,使用多边形碰撞体可以更精确地定义其碰撞区域。
  • 复合碰撞体(Compound Collider):由多个不同形状的碰撞体组合而成,用于构建复杂形状物体的碰撞模型。例如,一辆汽车可能由多个盒状碰撞体和球形碰撞体组合成复合碰撞体,来准确模拟汽车不同部位的碰撞情况。

OnCollisionEnter 事件

当两个带有碰撞体的GameObject碰撞时,两个对象都会注册一个OnCollisionEnter事件,其中包含对撞到对象的引用。

例子:为Health_Pickup添加碰撞处理事件,达到player碰撞health_pickup时拾取效果。
在这里插入图片描述

public class ItemBehavior : MonoBehaviour
{// 发生碰撞时被调用void OnCollisionEnter(Collision collision){if(collision.gameObject.name == "Player"){// 销毁当前物体Destroy(this.transform.gameObject);Debug.Log("碰撞,销毁");}}
}

在这里插入图片描述

碰撞触发器

  1. 概念

    碰撞触发器是一种特殊的碰撞体,与常规碰撞体不同,它主要用于检测物体之间的重叠情况,而不一定会产生物理上的碰撞效果,如阻止物体穿透等。当两个带有碰撞触发器的游戏对象重叠时,会触发特定的事件,开发人员可以在脚本中定义这些事件的响应逻辑,从而实现各种游戏功能,比如触发剧情、获取道具、进入特定区域等。

  2. 常见用法

    • 触发剧情或任务:在游戏场景中设置特定的区域,当玩家角色进入该区域时,通过碰撞触发器触发一段剧情动画或开启一个新任务。
    • 收集道具:为游戏中的道具添加碰撞触发器,当玩家角色与道具重叠时,触发收集逻辑,将道具添加到玩家的物品栏中。
    • 场景切换:在不同场景的交界处设置碰撞触发器,当玩家接近或进入该触发器区域时,触发场景切换的逻辑,将玩家传送到新的场景。
  3. 与碰撞体的区别

    • 物理效果:碰撞体主要用于模拟真实世界中的物理碰撞,会阻止物体相互穿透,产生碰撞反弹等物理效果。而碰撞触发器侧重于检测物体之间的重叠状态,不会产生直接的物理碰撞效果,物体可以相互穿透。
    • 事件触发:碰撞体通过OnCollisionEnter等方法来处理碰撞事件,通常在两个物体发生物理碰撞时触发。碰撞触发器则通过OnTriggerEnter等方法来触发事件,当两个物体的触发区域重叠时就会触发。

如何使用Unity中的碰撞触发器,需要为其添加一个Collider组件(常用的有胶囊碰撞体…),然后触发器的话,需要勾选Is Trigger 属性,将其设置为触发器。设置为触发器之后,事件监听变为 OnTriggerEnter OnTriggerExit OnTriggerExit .
外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

为了练习触发器,完成一个案例,设置Enemy敌人,当玩家player进入到该区域时,生成警报日志提示!

首先,创建一个胶囊体,为其添加红色材质,并放置于世界中心,然后碰撞体勾选Is Tirgger.
在这里插入图片描述
在这里插入图片描述

public class EnemyBehavior : MonoBehaviour
{void OnTriggerEnter(Collider other){if(other.name == "Player"){Debug.Log("玩家进入警戒范围");}    }void OnTriggerExit(Collider other){if (other.name == "Player"){Debug.Log("玩家离开警戒范围");}}
}

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

🤗 总结归纳

Collider组件通过RigidBody组件与其他Collider组件(或对象)交互

  • 如果Collider组件不是触发器,则充当具有实体的对象
  • 如果Collider组件是触发器,则可以被穿过。
  • 通过勾选 “Is Trigger” 属性,可从物理碰撞模式切换到触发模式,触发OnTriggerEnterOnTriggerStayOnTriggerExit等事件,方便实现非物理交互逻辑。
http://www.hrbkazy.com/news/51058.html

相关文章:

  • 贵州专业网站建设公司哪家好seo是搜索引擎营销吗
  • html简单的网站 今日头条
  • 建设个人网站用什么软件湖南正规关键词优化报价
  • 国外二级域名免费申请seo外链工具软件
  • wordpress搜索词结果按文章标题网站关键词优化工具
  • 贵阳论坛网站建设谷歌网站
  • 北京比较好的建网站公司刷外链
  • 大型网站开发语言排名推广普通话的意义50字
  • 安溪哪里有学做网站电商具体是做什么的
  • 自己做局域网站自己做一个网站
  • 苹果CMS如何做视频网站扬州网络推广公司
  • 湖南网站优化外包费用优化设计英语
  • php 微信 网站建设北京网站seo招聘
  • 刷赞网站推广qq免费五年级下册数学优化设计答案
  • ps做电商网站流程图设计公司网站模板
  • 计算机培训线上一对一网络优化工作内容
  • 一个新手如何做网站网站的网站建设
  • 做推广秒杀网站百度站长平台网站提交
  • 浙江网站建设推广seo交流网
  • nginx 一个独立ip 建立2个独立网站 2个域名青岛网站设计公司哪家好
  • 阿克苏地区住房和城乡建设局网站营销宣传策划方案
  • 无锡响应式网站网络推广外包业务销售
  • 广州网站优化关键词排名国际新闻今日头条
  • 河南平台网站建设哪里有网络营销知名企业
  • 网站虚拟空间作用网络推广外包怎么样
  • 有没有专门做牛仔的网站全网营销国际系统
  • wordpress手机登录seo搜索引擎优化工资薪酬
  • 马鞍山市住房城乡建设委官方网站电商自学网
  • 小程序是怎么制作出来的seo模拟点击有用吗
  • 柳州网站开发关键词优化排名软件哪家好