Rigidbody:

常用属性:

Mass:默认为1,单位并不是g或kg,而是相对的质量计量单位,只决定物体的惯性;

Drag:空气阻力;

Angular Drag:角阻力,旋转时受的阻力;

Use Gravity:是否受重力影响;

Is Kinematic:是否使用运动学;

Interpolate:插值,内插值,外插值;游戏对象出现抖动时可以尝试使用;

Collision Detection:碰撞检测,离散(默认),连续(高速运动的物体建议使用),连续动态(两个物体都是高速运动的物体);

Constraints:约束,当游戏对象受到力的影响,不会在某个轴上有位移或旋转,冻结位置,冻结旋转;

常用方法:

GetComponent<Rigidbody>().AddForce(move * speed * Time.deltaTime);//参数为三维向量,表示力的大小和方向

  

//给游戏对象添加力矩/扭矩,使物体旋转
GetComponent<Rigidbody>().AddTorque(new Vector3(0,10,0));

  

二、Collider碰撞器

刚体要和碰撞器一起使用

Is Trigger:是否触发;

Material:物理材质;

Center:碰撞检测范围;

发生碰撞的条件:1.两个物体都要有碰撞器,2.至少一个物体带有刚体;

物理材质(Material)

给物体添加摩擦力和弹力,只能添加到带有Collider组件的物体上。

Dynamic Friction:动摩擦力;

Static Friction:静摩擦力;

Bounciness:弹力;

Friction Combine:摩擦力的结合性;(两个物体都有摩擦力时的计算方式)

Bounce Combine:弹力的结核性;

三、碰撞和触发事件

碰撞相关三个事件

	//碰撞开始时会调用一次
void OnCollisionEnter(Collision other)
{
Debug.Log("碰撞开始");
} //碰撞结束时调用一次
void OnCollisionExit(Collision other)
{
Debug.Log("碰撞结束");
}
//碰撞时持续调用
void OnCollisionStay(Collision other)
{
Debug.Log("碰撞持续");
}

触发相关的三个事件

        //触发器相关的三个事件
//刚刚进入触发范围
void OnTriggerEnter(Collider other)
{
} //持续触发
void OnTriggerStay(Collider other)
{
} //触发结束
void OnTriggerExit(Collider other)
{
}

  

Rigidbody和Collider的更多相关文章

  1. 关于Rigidbody,Collider和CharacterController三者之间的关系和用法的总结

    Rigidbody:多用在“物体”上,因为“物体”都是“死”的,他们的运动一般都是靠物理系统.所以对于Rigidbody的移动,不要用Translate(),要用各种“力”, 比如:Rigidbody ...

  2. [Unity Physics]Physics - Rigidbody、Collider

    什么是Collider 碰撞器组件在Unity引擎中触发物理碰撞的最基本的条件. 可以这样说,假如一个游戏中没有物理碰撞系统是不可能的. 什么是Rigidbody 通过物理模拟的控制对象的位置. Ri ...

  3. Rigidbody(刚体) and Collider(碰撞器)

    关于刚体Rigidbody,手册上是这么描述的: Control of an object's position through physics simulation. 通过物理模拟控制一个物体的位置 ...

  4. [Unity2D]Box Collider 2D盒子碰撞器

    盒子碰撞器(BoxCollider2D)是Unity2D中常用的碰撞器,所有为碰撞器,顾名思义,就是用于检测物体之间的碰撞情况的,Unity2D里面除了BoxCollider2D碰撞器之外还集成Box ...

  5. [转]CharacterController与Rigidbody

    From: http://blog.csdn.net/czlilove/article/details/9139103 今天下午碰到个问题纠结了很久:人物加上了Rigidbody并使用了重力,遇到悬崖 ...

  6. Unity Sample Bootcamp

    M4枪 射击特效 Gun.js源码 function GenerateGraphicStuff(hit : RaycastHit) { var hitType : HitType; var body ...

  7. 胶囊碰撞体(CapsuleCollider)

    胶囊碰撞体 (Capsule Collider) 胶囊碰撞体 (Capsule Collider) 由两个半球体与一个圆柱体相连接而构成.它与胶囊 (Capsule) 基元形状相同.   一堆胶囊碰撞 ...

  8. 对《[Unity官方实例教程 秘密行动] Unity官方教程《秘密行动》(十二) 角色移动》的一些笔记和个人补充,解决角色在地形上移动时穿透问题。

    这里素材全是网上找的. 教程看这里: [Unity官方实例教程 秘密行动] Unity官方教程<秘密行动>(九) 角色初始设定 一.模型设置: 1.首先设置模型的动作无限循环. 不设置的话 ...

  9. Unity3D脚本中文系列教程(十一)

    http://dong2008hong.blog.163.com/blog/static/4696882720140313058768/ BoxCollider 类,继承自Collider 一个盒状的 ...

随机推荐

  1. java实验二实验报告

    一.实验内容 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初步掌握UML建模 4. 熟悉S.O.L.I.D原则 5. 了解设计模式 二.实验过程(本次试验都 ...

  2. c#学习路线及目录导航

    一 很久前的想法 转眼间,2018年已经过了四分之一,从我进入学校选择计算机专业到现在工作,已经过去了4年之久了.这一路走来经历了很多的曲折,对软件开发这个职业有了许多新的认识,我主要是从事NET领域 ...

  3. Akka系列---什么是Actor

    本文已.Net语法为主,同时写有Scala及Java实现代码 严肃的说,演员是一个广泛的概念,作为外行人我对Actor 模型的定义: Actor是一个系统中参与者的虚拟人物,Actor与Actor之间 ...

  4. windwon安装macaca环境

      一 安装配置java   1.安装java_jdk ,安装过程中顺带一起安装jre   (1)选择[新建系统变量]--弹出“新建系统变量”对话框,在“变量名”文本框输入“JAVA_HOME”,在“ ...

  5. angular入门学习文档之一

    一.数据双向绑定 angular(下面统一简称ng)强大的地方莫过于它内置的数据双向绑定功能,下面我们通过一个简单的例子来演示ng强大的双向绑定数据的能力. 代码如下: 1.dom结构: 1.< ...

  6. true和false

    下面这些值在JavaScript中都是falsy: false 0 (数字零) "" (空字符串) null undefined NaN (一个特殊的Number值,意为Not-a ...

  7. rabbitmq .erlang.cookie文件疑惑

    1.安装方式常见的rabbitmq安装方式有两种:rpm安装和二进制安装(编译安装). 2..erlang.cookie是什么.erlang.cookie是erlang实现分布式的必要文件,erlan ...

  8. SpringBoot项目部署进阶

    一.war包部署 通过“云开发”平台初始化的SpringBoot项目默认采用jar形式打包,这也是我们推荐的方式.但是,因为某些原因,软件需求方特别要求用war形式打包,我们该怎么做? 1.项目尚未开 ...

  9. 【BZOJ1835】基站选址(线段树)

    [BZOJ1835]基站选址(线段树) 题面 BZOJ 题解 考虑一个比较暴力的\(dp\) 设\(f[i][j]\)表示建了\(i\)个基站,最后一个的位置是\(j\)的最小代价 考虑如何转移\(f ...

  10. BZOJ2671 Calc 【莫比乌斯反演】

    题目链接 BZOJ2671 题解 令\(d = (a,b)\),\(a = dx,b = dy\) 那么有 \[ \begin{aligned} d(x + y) | d^2xy \\ (x + y) ...