• unity操作_碰撞器 c#


    碰撞器Collider

    在场景中选择一个物体Cube 观察检查器Inspector 自带Cube会默认挂载盒子碰撞器Box Colilider

    增加组件可以增加更多中碰撞器

    Edit Collider 编辑碰撞器形状

    Is Trigger选项

    Is Trigger :是否是触发器,如果启用此属性 则该碰撞体将用于触发事件,并被物理引擎忽略

                       主要用于进行没有物理效果的碰撞检测

    当我们【开启Is Trigger】 Cube下落会变成穿透地面 也就是说【不会产生碰撞】

    Center :碰撞器在对象局部空间中的中心点位置

    我们可以通过调整xyz的位置来调节该物体的中心点碰撞位置 通常用在不规则物体

    我们在场景上创建一个球体Sphere

    我们看到球体 有【Radius】半径  也就是【碰撞体的尺寸大小】

    当我们改变碰撞体大小的时候

    用一个未开启Is Trigger的物体去碰撞他会被球的碰撞器大小弹开

    同理 盒状碰撞器等也是一样

    胶囊也是一样

    重点:组合物体使用多种碰撞器 :刚体对象的子对象碰撞器信息参与碰撞检测

    我们对Cube创建一个空子物体

    对这个空子物体增加一个Collider碰撞器组件

    通过Transform更改位置和形状

    复制一个放在左侧

    运行即可看到效果   Cube被空子物体撑在了地面上

    【父刚子碰】:

    也就是说 父物体挂载刚体Rigidbody 所有子物体都会产生刚体 通常子物体做碰撞器父物体做刚体

    此外还有一些不常用的碰撞器:

    Wheel Collider :环状碰撞器 用于制作赛车

    Mesh Collider :物体形状 = 网格碰撞器形状

    我们在场景中创建一个圆柱体

    我们通过切换网格世界可以看出 圆柱体的默认碰撞器是胶囊类型的

    我们移除圆柱体默认的胶囊碰撞器

    添加一个Mesh Collider 我们可以看出物体与碰撞器完全重合 与其他物体一样

    需要注意的是要手动添加网格,当然系统自带的圆柱体有自动添加的功能

    我们切回实体世界 如果想让网格碰撞器发生碰撞 需要勾选 Convex

    只有勾选了Convex才能产生力的作用

    网格碰撞器下的不必要计算选项

    下面对物理材质进行讲解:

    首先我们在Materials文件包建一个物理材质

    Phy Material 其中动静摩擦为0 其用力后可无限移动,前提物体的Phy Material和地面的Phy Materials都要挂载物理材质 

    运行后调整Cube碰撞后 会没有摩擦一直移动

    Bounciness 弹力  弹力范围0~1  如果是1就不会有能量损耗无限弹

  • 相关阅读:
    Flink CDC 2.0 主要是借鉴 DBLog 算法
    okcc呼叫中心自动外呼坐席接听电话为什么不均匀?
    【深度学习】pix2pix GAN理论及代码实现
    PyTorch中并行训练的几种方式
    windows线程 事件CreateEvent、SetEvent、ResetEvent、CloseHandle
    LeetCode 917 仅仅反转字母 简单
    面试Tip--java创建对象的四种方式
    王洪伟:流体力学与微积分方法求解水池进排水问题
    2-11 基于matlab的BP-Adaboost的强分类器分类预测
    Buildroot 开发
  • 原文地址:https://blog.csdn.net/weixin_69360830/article/details/133926877