Unity14--物理系统--刚体、触发器、Force和Toque扭矩、恒力
来源:互联网 发布:中国城市化率数据 编辑:程序博客网 时间:2024/04/30 03:37
1.刚体创建RigidBodyDemo文件
void Start () {
//1.获取刚体组件,改属性
Rigidbody m_rigidbody = gameObject.GetComponent<Rigidbody>();
m_rigidbody.mass = 2; //改质量属性
m_rigidbody.useGravity =false;//改重力属性
}
2.发生碰撞的条件:
//主动方必须有Rigidbody 发生碰撞的两个游戏对象必须有Collider(碰撞器检测)本例子是红方块
//被动方对于RigidBody 可有可无。
//参数表示被动方
//下面都要背会会手写,都是生命周期函数
voidOnCollisionEnter(Collision col)
{
Debug.Log("开始碰撞");
}
voidOnCollisionStay(Collision col)
{
Debug.Log("持续碰撞");
}
voidOnCollisionExit(Collision col)
{
Debug.Log("碰撞结束"+col.collider.gameObject .name );//出来的参数表示被动方的
}
二、触发器点上Box Collider 里的Is Trigger 的√
//触发器的条件:
//发生碰撞的物体,两者其中之一有RigidBody即可,发生碰撞的两个游戏对象必须有Collider(碰撞器检测),其中一方勾选Is
Trigger即可
//参数还是被动方
void OnTriggerEnter(Collision other)//可游戏中建个加血的场地东西
{
Debug.Log("触发器开始出发" + other);
GameObject.Destroy(gameObject); //销毁自身,做子弹打击物体,挨到子弹消失
Destroy(other.gameObject); //子弹打击物体也消失,
//好好看看用UnityEngine,子弹打到墙上,有子弹消失
}
void OnTriggerStay(Collision other)
{
Debug.Log("触发器检测中" + other);
}
void OnTriggerExit(Collision other)
{
Debug.Log("触发器结束" + other.gameObject .name );
}
三、
这里面有个bug:如果场地旋转,点击上方按钮改成世界坐标系Global,会检测重力下落
四、Force和Toque扭矩、恒力
(1)ForceDemo文件:
privateRigidbody m_rigidbody;
1.void Start () {
m_rigidbody = GetComponent<Rigidbody>();//获取组件
}
2.void Update () {
//1.世界坐标系走
// m_rigidbody.AddForce(Vector3.up* 10);//力10抵消了9.8N,向上0.2,会越来越快
m_rigidbody.AddForce(Vector3.forward, ForceMode.Impulse); //脉冲力,可产生弧线,炮弹子弹效果
m_rigidbody.AddForce(Vector3.forward+Vector3.up, ForceMode.Impulse);//合力45度方向
//2在自己的坐标系移动
m_rigidbody.AddRelativeForce(Vector3.up);
(2)扭矩
m_rigidbody.AddTorque(Vector3.up);//旋转的切线上旋转
m_rigidbody.AddRelativeTorque(Vector3.up * 5);//绕自身的Y轴旋转
(3)恒力组件添加会绑定RigidBody,改变刚体里的Angular Drag 角阻力,比如小饰品秋千不停的转
添加这个 //Component -- physics --Constant Force //
- Unity14--物理系统--刚体、触发器、Force和Toque扭矩、恒力
- Unity 物理系统--刚体
- 什么是扭矩和马力?
- 扭矩和功率
- 物理-刚体运动
- unity3d之刚体碰撞器和触发器的一些知识
- U3d刚体,碰撞,触发器
- 扭矩
- 扭矩
- 扭矩
- 扭矩
- Unity 理解刚体(Rigidbody)和碰撞体(Collider)和触发器(Is Trigger)以及刚体休眠(Rigidbody Sleeping)
- Unity 理解刚体(Rigidbody)和碰撞体(Collider)和触发器(Is Trigger)以及刚体休眠(Rigidbody Sleeping)
- 物理引擎Box2D之刚体
- Havok物理引擎-刚体介绍
- unity3d 理解刚体(Rigidbody)和碰撞体(Collider)以及触发器(Is Trigger),边学边更新
- unity3d 理解刚体(Rigidbody)和碰撞体(Collider)以及触发器(Is Trigger)
- unity3d 理解刚体(Rigidbody)和碰撞体(Collider)以及触发器(Is Trigger),边学边更新
- 【STL】容器 > 顺序容器 > vector
- 最适合人工智能开发的5种编程语言
- Java集合-07之 Stack
- 安卓BLE接收不到数据,设置描述失败的解决办法
- Qt网络编程--HTTP服务器(一)
- Unity14--物理系统--刚体、触发器、Force和Toque扭矩、恒力
- java 资料 各版本的API(中文版,英文版)
- 深入理解子查询
- 全志H3-NanoPi开发板SDK之二准备编译环境
- [NOIP模拟]Modern Art2
- 网易2018内推笔试题_操作序列_C++
- Spring集成redis【脱离Spring版本的】
- subl+zeal
- oracle执行顺序