Unity3D刚体动力学理论与应用受力情况如何取得

扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
下载作业帮安装包
扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
unity3d中c#脚本怎么检测碰撞力的大小?
作业帮用户
扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
rigidbody.velocity 即刚体速度Vrigidbody.mass 即刚体质量M不考虑阻力的话 F=MV/T,T为力F的作用时间
它是什么类型的量?
unity3d并没有直接检测碰撞力大小的方法。
可以认为碰撞过程是瞬时完成的
那么碰撞力大小直接表现在rigidbody.velocity参数上,当然和物体的质量也有关系。
大神,你知道如何调用其它脚本的函数么?
GameObject.Find("要查找的gameobject的名字").GetComponent().变量或者函数
或者给GameObject对象添加Tag标记
GameObject.FindWithTag("标记名").GetComponent().变量或者函数
你可以去看看unity的中文使用手册,很详尽的。
噢噢,好多人都说详情见那个手册,到底哪里有啊?
为您推荐:
扫描下载二维码初识Unity 3D——刚体
今晚看的很简单,就是简单的学习了一下刚体,以及其四个简单的属性:
质量(Mass)、阻力(Drag)、角阻力(Angular Drag)、使用重力(Use Gravity)。需要注意的是加上刚体之后,物体之间不糊相互穿透,而且使用刚体组件同样可以使物体移动:
void Update () {
if(Input.GetKey(KeyCode.W)){
m_RigidBody.MovePosition (m_Transform.position + Vector3.forward*0.2f)
if(Input.GetKey(KeyCode.A)){
m_RigidBody.MovePosition (m_Transform.position + Vector3.left*0.2f)
if(Input.GetKey(KeyCode.S)){
m_RigidBody.MovePosition (m_Transform.position + Vector3.back*0.2f)
if(Input.GetKey(KeyCode.D)){
m_RigidBody.MovePosition (m_Transform.position + Vector3.right*0.2f)
没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!零基础Unity3D游戏开发系列 第六章:物理引擎(一)刚体 | Unity3D教程手册
当前位置 :
>> 零基础Unity3D游戏开发系列 第六章:物理引擎(一)刚体
零基础Unity3D游戏开发系列 第六章:物理引擎(一)刚体
要使游戏中对象受物理引擎控制,简单的办法就是给它加个刚体(Rigidbody)。Component-&Physics-&Rigidbody.
零基础Unity3D游戏开发系列 第六章:物理引擎(一)刚体
刚体是模拟物理效果的对象。添加了刚体组件的游戏物体,会受重力影响,可以被玩家四处推动,或者直接用脚本添加力给对象来让他四处移动。
通常情况下,对同一物体,要么通过刚体操纵,要么通过变换(transform)操纵。但添加刚体组件之后直接通过Transform组件更改物体位置,它和其他对象的碰撞可能出问题(除非Is Kinematic 选项被选中,选中该选项,则没法通过物理模拟来改变物体运动状态)。应避免同时使用两种方式。正确地方法应该是通过施加力或者扭矩来移动刚体。
  Mass 质量
物体的质量(任意单位)。建议一个物体的质量不要多于或少于其他单位的100倍。
移动时物体受到的空气阻力。0表示没有,极大时物体立即停止运动。
 Angular Drag
角阻力 当受扭力旋转时物体受到的空气阻力。0表示没有,极大时物体立即停止旋转。
Use Gravity 是否使用重力
  Is Kinematic 是否是运动学
若激活,该物体不再受物理引擎驱动,而只能通过transform来操作。适用于模拟运动的平台或者模拟与铰链关节连接的刚体。
Interpolate 插值
当你发现刚体运动时抖动,可以尝试下面的选项。
None 无 不应用插值。
Interpolate 内插值 基于上一帧的变换来平滑本帧变换。
Extrapolate 外插值 基于下一帧的预估变换来平滑本帧变换。
 Freeze Rotation 冻结旋转
若激活,物体将不会受碰撞或脚本施加的力而旋转——只能调用transform.Rotate()来旋转。
Collision Detection 碰撞检测
碰撞检测模式。用于避免高速物体穿过其他物体,却未触发碰撞。
 Discrete 离散
离散碰撞检测。使用离散碰撞检测模式来与场景中其他碰撞器进行碰撞检测。其他物体与它的碰撞检测,也会应用这种模式。适用于普通碰撞(这是默认的模式)。
Continuous 连续
连续碰撞检测。使用离散碰撞检测来检测与动态碰撞器(刚体)的碰撞,使用连续碰撞检测来检测与静态网格(非刚体)的碰撞检测。采用连续动态碰撞检测模式的刚体碰见这类物体也将采用连续碰撞检测模式。而与其他刚体将采用离散碰撞检测模式。这种模式适用于那些采用动态连续碰撞模式的物体碰撞的物体。(这对物理表现有很大的影响,如果你不关心与高速物体的碰撞,那么就让其为默认的离散模式。)
Continuous Dynamic&&& 动态连续
连续动态碰撞检测。使用连续动态碰撞检测模式来检测与连续模式和连续动态模式的物体间的碰撞。也适用于与静态网格(非刚体)的碰撞检测。而与之碰撞的其他模式的物体,采用的是离散动态碰撞检测模式。适用于高速物体。
Constraints 约束 对刚体运动的约束。 限制刚体在某些维度上的移动或|和旋转。
Kinematic Rigidbodies 运动学刚体
运动学刚体指的是激活了isKinematic属性的刚体。运动学刚体不受力、重力或扭矩的影响。可以通过设置Transform 的position和rotation来准确的操作它们或者让它们动起来,但是,它们可以和其他的非运动学刚体互相作用。0
比如你可能想一个骨骼附加了刚体并用关节相连的活动的角色变成人偶。大部分时间里角色受动画控制,因此设置刚体为运动学的。但是当他收到打击你想让他变成人偶并受物理引擎控制,那只需要简单地把isKinematic属性取消掉。或者有一个活动的平台并想在上面放一些刚体盒子。
你的物体网格的大小要比刚体的质量更加重要。如果你发现你的刚体不像你所期望的那样运动——慢、飘、碰撞不正确——那么请考虑调整你的网格资源的大小。Unity的默认长度单位是1单位=1米。你导入模型的大小会被保持,并参与物理运算中。例如,一个摩天大楼倒塌的表现肯定要异于一个玩具积木搭起来的塔,所以,对不同大小物体,要用精确的比例建模。
可以和一个默认的盒子对比来判断大小。使用 GameObject-&Create Other-&Cube来创建盒子。盒子的高为1米
1.绝不要把父子刚体放在一起。
2.绝不要缩放刚体的父对象。
本文来自:Unity3D教程手册QQ群()作者:傻瓜(QQ:)感谢分享!本文禁止转载!
欢迎Unity3D爱好者踊跃分享你的学习心得,来稿请发至:
【上一篇】
【下一篇】
您可能还会对这些文章感兴趣!注册花火通行证,没有账号
智能硬件分类
&>&&>& > 正文
分享文章到微信
关注花火网微信公众号
  1、启动unity3d  游戏  引擎。这里我就随便启动一个之前的项目了。  2、随便建立一个物体。这里我就建立了一个立方体。  3、然后再检视窗口,为选择的立方体添加一个组件,单击add compo  net  。  4、在弹出的窗口中,单击弹出新的窗口,单击rigidbody(刚体)。  5、这时所选择的立方体就有了刚体组件。添加了这个组件的游戏对象可以接受外力和扭矩力,并且像真实的物体一样接受摩擦力和重力,还可以与其他物体发生相互碰撞。  6、刚体组件的具体参数。  1)mass 质量,以千克计算。  2)drag 空气阻力,当物体受力运动时空气的阻力,以牛顿计算。  3)angular drag 空气角阻力,当物体受扭矩力选择时空气的阻力,以牛顿计算。  4)use gravity 使用重力,当开启此项,物体会受到重力作用。  5)is kinematic 是否开启动力学,开启此项,物体不受力的作用。  6)constrants:约束。用于控制刚体运动的约束。
加载更多新闻
Copyright @
HUAHUO.COM, All Rights Reserved. 版权所有 花火网02-unity3d刚体与刚体移动_百度文库
您的浏览器Javascript被禁用,需开启后体验完整功能,
赠送免券下载特权
10W篇文档免费专享
部分付费文档8折起
每天抽奖多种福利
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
02-unity3d刚体与刚体移动
&&刚体与刚体移动,源代码放送,直接拷贝代码放到对象身上就行。
经过了N次测试,属于无脑代码。
阅读已结束,下载本文需要
想免费下载本文?
定制HR最喜欢的简历
你可能喜欢}

我要回帖

更多关于 多刚体系统动力学 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信