蓝鸥Unity入门刚体学习笔记

蓝鸥Unity入门刚体学习笔记

相关文章

蓝鸥Unity入门脚本组件学习笔记
蓝鸥Unity入门脚本生命周期学习笔记
蓝鸥Unity入门Input类学习笔记
蓝鸥Unity入门GameObject学习笔记
蓝鸥Unity入门Vector3学习笔记
蓝鸥Unity入门Transform学习笔记
蓝鸥Unity入门Time类学习笔记
蓝鸥Unity入门Mathf类学习笔记

蓝鸥Unity入门预设体学习笔记

蓝鸥Unity入门鼠标事件学习笔记



一、刚体
物理引擎:
物理引擎能够真实的模拟物理效果
Unity中使用的是NVIDIA的PhysX物理引擎
在Unity中使用Rigidbody让游戏对象受物理引擎控制
在Unity里进行演示——创建一个Plane——染成绿色——创建一个Cube,悬空——染成红色!
正常情况下Cube不会悬空,因为受到重力的影响,cube不会悬浮。那么就要创建一个刚体组件——Rigidbody。
选中Cube——查找Rigidbody——添加到Cube上——然后重新运行场景,我们的Cube就从从空中下落到地面。
Rigidbody参数
Mass:质量1 只是用来决定物体的惯性的,物体的质量很轻,被撞击之后会飞的很远。
Drag:表示空气阻力的,想要游戏对象下落时慢一下,可以调整空气阻力
Angular Drag:角阻力,物体旋转的时候使用
Use Gravity:是否受到重力的影响
Is Kinematic :是否使用运动学,不在受到物理引擎的控制
Interpolate:差值 none无差值  Interpolate内差值 Extrapolate 外差值
Constraints Detection:碰撞检测 Discrete 离散碰撞检测(一般用)  Continuous 连续碰撞检测  Continuous Dynamic 连续动态碰撞检测
Constraints:Freeze  Position、Freeze  Rotation
冻结Position
冻结Rotation


给Cube添加一个脚本Test,然后我们看一下刚体中的一些属性:

using UnityEngine;
using System.Collections;

public class Test : MonoBehaviour {


    void Start () {
        Rigidbody rb = GetComponent ();
        float mass= rb.mass;//质量
        float drag= rb.drag;//空气阻力
        rb.angularDrag;//角阻力
        rb.useGravity;//当前游戏对象是否受到重力影响
        rb.isKinematic;//是否使用运动学
        rb.freezeRotation;//是否冻结游戏对象的旋转

    
    }

}


你可能感兴趣的:(Unity3D开发)