zoukankan      html  css  js  c++  java
  • uinty之碰撞体,触碰体,刚体

    https://blog.csdn.net/qq_40674821/article/details/81838233

    Rigidbody刚体是赋予物体力的的作用效果的基础,包括重力,拉力(阻力也是拉力的一种),角拉力(角阻力同样)。

    体现出来的就是物体悬空时会掉落,被其他东西碰到时(假设有碰撞体)会朝着受力方向运动或产生运动趋势。

    勾选Is Kinematic使物体不受运动学影响(即简单理解为受力后不动/不改变运动趋势)。

    勾选constraints禁止该物体的(position/rotation)在所勾选方向上产生运动.

    Collider碰撞体则是物体之间的一切触碰,碰撞基础。任意两个物体之间的接触碰撞实际上都是碰撞体的接触,有任何一方没有碰撞体则碰撞不会发生(产生穿透效果),碰撞发生的效果是由碰撞体的形状大小决定的。比如一个正方体形状的物体,给它一个球形的碰撞体,那么它在收到其他物体的力时候,将会发生的是球形物体收到力时的运动。

      点击Edit Collitder前的按钮后可改变碰撞体的大小与位置。

      在这里可以选择碰撞体的物理材质。

    顺便介绍一下物理材质:

    Physic Material

    物理材质。(如果没有设置物理材质,则认定该物体的摩擦力为无穷大,弹力为零)

    创建一个物理材质,设置

    Dynamic Friction(动态摩擦力,即物体开始运动之后的摩擦力)

    Static Friction(静态摩擦力,物体静止时受到超过该值的力才会开始运动)

    Bounciness 弹力(1为弹到原来高度)

    Friction Combine 组合摩擦力(两个接触面的摩擦力是取何值(平均值?最小值?))

    Bounciness 组合弹力(同上)

    碰撞时会产生碰撞事件:

    OnCollisionEnter OnCollisionEnter is called when this collider/rigidbody has begun touching another rigidbody/collider. 
    当该collider/rigidbody开始碰到另一个rigidbody/collider时OnCollisionEnter被调用。
    OnCollisionExit OnCollisionExit is called when this collider/rigidbody has stopped touching another rigidbody/collider. 
    当 collider/rigidbody停止碰撞另一个 rigidbody/collider时,OnCollisionExit被调用。
    OnCollisionStay OnCollisionStay is called once per frame for every collider/rigidbody that is touching rigidbody/collider. 
    每当该collider/rigidbody碰到其他rigidbody/collider,将在每帧调用OnCollisionStay。
    其中勾选Is Trigger则表明设置该碰撞体为触发体Trigger,这时候该物体不会与其他物体发生碰撞,即其他物体会穿过它,而产生触发事件。(一个触发器和一个普通碰撞器碰撞,其中之一必须附加刚体)

    当一个刚体进入或退出触发器,将发送OnTriggerEnter, OnTriggerExit 和 OnTriggerStay消息。

    OnTriggerEnter OnTriggerEnter is called when the Collider other enters the trigger. 
    当碰撞器进入触发器时OnTriggerEnter被调用。
    OnTriggerExit OnTriggerExit is called when the Collider other has stopped touching the trigger. 
    当该碰撞器停止接触触发器时,OnTriggerExit被调用。也就是说,当碰撞器离开触发器时,调用OnTriggerExit。
    OnTriggerStay OnTriggerStay is called almost all the frames for every Collider other that is touching the trigger. 
    每当碰撞器从进入触发器,几乎每帧调用OnTriggerStay
     

    刚体赋予物体受力的效果,碰撞体则让物体之间能够产生接触碰撞,产生相互作用。触发体可以用来做自动门的感应区域,水域等效果。

    基本上来说碰撞体和刚体的区别讲清楚了。

    这里参见一下官方的介绍做个总结,如下:

    如果一个对象带有碰撞体,需要在游戏中移动,那么你应该添加个Rigidbody组件给它。如果你不想该对象与其他对象有交互,刚体可以设置为运动学刚体(kinematic)。

     
    ————————————————
    版权声明:本文为CSDN博主「OneCrow」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/qq_40674821/article/details/81838233

  • 相关阅读:
    寄存器基础知识
    基础知识
    架构
    Mac下Apache服务器的初步搭建
    ios字体简单设定
    xcode中自定义log打印
    jQuery打印插件
    ionic3生命周期钩子
    ES5 数组方法map
    $compile的妙用
  • 原文地址:https://www.cnblogs.com/h694879357/p/12701752.html
Copyright © 2011-2022 走看看