unity3d为什么不自己写一个unity 2d 物理引擎擎

更多频道内容在这里查看
爱奇艺用户将能永久保存播放记录
过滤短视频
暂无长视频(电视剧、纪录片、动漫、综艺、电影)播放记录,
按住视频可进行拖动
&正在加载...
请选择打赏金额:
收藏成功,可进入
查看所有收藏列表
当前浏览器仅支持手动复制代码
视频地址:
flash地址:
html代码:
通用代码:
通用代码可同时支持电脑和移动设备的分享播放
用爱奇艺APP或微信扫一扫,在手机上继续观看
当前播放时间:
一键下载至手机
限爱奇艺安卓6.0以上版本
使用微信扫一扫,扫描左侧二维码,下载爱奇艺移动APP
其他安装方式:手机浏览器输入短链接http://71.am/udn
下载安装包到本机:
设备搜寻中...
请确保您要连接的设备(仅限安卓)登录了同一爱奇艺账号 且安装并开启不低于V6.0以上版本的爱奇艺客户端
连接失败!
请确保您要连接的设备(仅限安卓)登录了同一爱奇艺账号 且安装并开启不低于V6.0以上版本的爱奇艺客户端
部安卓(Android)设备,请点击进行选择
请您在手机端下载爱奇艺移动APP(仅支持安卓客户端)
使用微信扫一扫,下载爱奇艺移动APP
其他安装方式:手机浏览器输入短链接http://71.am/udn
下载安装包到本机:
爱奇艺云推送
请您在手机端登录爱奇艺移动APP(仅支持安卓客户端)
使用微信扫一扫,下载爱奇艺移动APP
180秒后更新
打开爱奇艺移动APP,点击“我的-扫一扫”,扫描左侧二维码进行登录
没有安装爱奇艺视频最新客户端?
, 可在设置中重新打开噢!
30秒后自动关闭
与Unity3d一起玩游戏开发!!:第五集-有趣的物理引擎">与Unity3d一起玩游戏开发!!:第五集-有趣的物理引擎
播放量数据:快去看看谁在和你一起看视频吧~
您使用浏览器不支持直接复制的功能,建议您使用Ctrl+C或右键全选进行地址复制
安装爱奇艺视频客户端,
马上开始为您下载本片
5秒后自动消失
&li data-elem="tabtitle" data-seq="{{seq}}"& &a href="javascript:void(0);"& &span>{{start}}-{{end}}&/span& &/a& &/li&
&li data-downloadSelect-elem="item" data-downloadSelect-selected="false" data-downloadSelect-tvid="{{tvid}}"& &a href="javascript:void(0);"&{{pd}}&/a&
选择您要下载的《
色情低俗内容
血腥暴力内容
广告或欺诈内容
侵犯了我的权力
还可以输入
您使用浏览器不支持直接复制的功能,建议您使用Ctrl+C或右键全选进行地址复制
本奖品由提供
红包雨下完了,下次早点来噢~21189人阅读
unity3d开发(20)
Unity内置了NVIDIA的Physx物理引擎,Physx是目前使用最为广泛的物理引擎,被很多游戏大作所采用,开发者可以通过物理引擎高效、逼真地模拟刚体碰撞、车辆驾驶、布料、重力等物理效果,使游戏画面更加真实而生动。
Rigidbody(刚体)组件可使游戏对象在物理系统的控制下来运动,刚体可接受外力与扭矩力用来保证游戏对象像在真实世界中那样进行运动。任何游戏对象只有添加了刚体组件才能受到重力的影响,通过脚本为游戏对象添加的作用力以及通过NVIDIA物理引擎与其他的游戏对象发生互动的运算都需要游戏对象添加了刚体组件。
依次打开GameObject-&Create Empty,创建一个空游戏对象,然后选择该对象,打开菜单栏中的Component-&Physics-&Rigidbody,如下图:
Rigidbody组件的属性面板,如下图:
Mass:质量,该项用于设置游戏对象的质量
Drag:阻力,当对象受力运动时受到的空气阻力,0表示没有空气阻力,阻力极大时游戏对象会立即停止运动
Angular Drag:当对象受扭矩力旋转时受到的空气阻力,0表示没有空气阻力,阻力极大时游戏对象会立即停止运动
Use Gravity:使用重力,若开启此项,游戏对象会受到重力的影响
Is Kinematic:是否开启动力学,若开启此项,游戏对象将不再受物理引擎的影响从而只能通过Transform属性来对其操作
Interpolate:插值,该项用于控制运动的抖动情况,有3项可以选择,None:没有插值;Interpolate:内插值,基于前一帧的Transform来平滑此次的Transform;Extrapolate:外插值,基于下一帧的Transform来平滑此次的Transform
Collision Detection:碰撞检测,该属性用于控制避免高速运动的游戏对象穿过其他的对象而未发生碰撞,有3项可以选择,Discrete:离散碰撞检测,该模式与场景中其他的所有碰撞体进行碰撞检测;Continuous:连续碰撞检测;Continuous Dynamic:连续动态碰撞检测模式
Constraints:约束,该项用于控制对于刚体运动的约束
Collides碰撞体,碰撞体是物理组件的一类,它要与刚体一起添加到游戏对象上才能触发碰撞。如果两个刚体相互撞在一起,除非两个对象有碰撞体时物理引擎才会计算碰撞,在物理模拟中,没有碰撞体的刚体会彼此相互穿过
选中游戏对象,打开菜单栏中的Component-&Physics-&。。。,如下图:
Box Collider:盒碰撞体,盒碰撞体是一个立方体外形的基本碰撞体,该碰撞体可以调整为不同大小的长方体,可用作门、墙、以及平台等,也可以用于布娃娃的角色躯干或者汽车等交通工具的外壳,当然最适合用在盒子或是箱子上,属性如下图:
Is Trigger:触发器,勾选该项,则该碰撞体可用于触发事件,并将被物理引擎所忽略
Material:材质
Center:中心,碰撞体在对象局部坐标中的位置
Size:大小,碰撞体再X、Y、Z方向上的大小
Sphere Collider:球形碰撞体,球形碰撞体是一个基于球体的基本碰撞体,球体碰撞体的三维大小可以均匀等地调节,但不能单独调节某个坐标轴方向的大小,该碰撞体适用于落石、乒乓球等游戏对象
Radius:半径,球形碰撞体的大小
Capsule Collider:胶囊碰撞体,胶囊碰撞体由一个圆柱体和与其相连的两个半球体组成,是一个胶囊形状的基本碰撞体,胶囊碰撞体的半径和高度都可以单独调节,可用在角色控制器或与其他不规则形状的碰撞结合来使用
Height:高度,该项用于控制碰撞体中圆柱的高度
Direction:方向,在对象的局部坐标中胶囊的纵向方向所对应的坐标轴,默认是Y轴
Mesh Collider:网格碰撞体,网格碰撞体通过获取网格对象并在其基础上构建碰撞,在与复杂网格模型上使用基本碰撞相比,网格碰撞体要更加精细,但会占用更多地系统资源
Smooth Sphere Collisions:平滑碰撞,在勾选该项后碰撞会变得平滑
Mesh:网格,获取游戏对象的网格并将其作为碰撞体
Convex:凸起,勾选该项,则网格碰撞体将会与其他的网格碰撞体发生碰撞
Wheel Collider:车轮碰撞体,车轮碰撞体是一种针对地面车辆的特殊碰撞体,它有内置的碰撞检测、车轮物理系统以及滑胎摩擦的参考体
Suspension Distance:悬挂距离,该项用于设置车轮碰撞体悬挂的最大伸长距离,按照局部坐标来计算,悬挂总是通过其局部坐标的Y轴延伸向下
Center:中心,该项用于设置车轮碰撞体在对象局部坐标的中心
Suspension Spring:悬挂弹簧,该项用于设置车轮碰撞体通过添加弹簧和阻尼外力使得悬挂达到目标位置
Forward Friction:向前摩擦力,当轮胎向前滚动时的摩擦力属性
Sideways Friction:侧向摩擦力,当轮胎侧向滚动时的摩擦力属性
Character Controller,角色控制器,角色控制器主要用于对第三人称或第一人称游戏主角的控制,并不使用刚体物理效果
character controller组件属性如下图:
Slope Limit:坡度限制,该项用于设置所控制的角色对象只能爬上小于或等于该参数值的斜坡
Step Offset:台阶高度,该项用于设置所控制的角色对象可以迈上的最高台阶的高度
Skin Width:皮肤厚度,该参数决定了两个碰撞体可以相互渗入的深度,较大的参数值会产生抖动的现象,较少的参数值会导致所控制的游戏对象被卡住,较为合理地设定上是:该参数值为Radius值的10%
Min Move Distance:最小移动距离,如果所控制的角色对象的移动距离小于该值,则游戏对象将不会移动
Center:中心,该参数决定了胶囊碰撞体再世界坐标中得位置,
Radius:半径,胶囊碰撞体的长度半径,
Height:高度,该项用于设置所控制的角色对象的胶囊碰撞体的高度
Interactive Cloth:交互布料,交互布料组件可在一个网格上模拟类似布料的行为状态
Skinned Cloth:蒙皮布料,蒙皮布料组件与蒙皮网格渲染器一起用来模拟角色身上的衣服,如果角色动画使用了蒙皮网格渲染器,那么可以为其添加一个蒙皮布料,使其看起来更加真实、生动
Cloth Renderer:布料渲染器
Hinge Joint:铰链关节,铰链关节由两个刚体组成,该关节会对刚体进行约束,使得它们就好像被连接再一个铰链上那样运动,它非常适用于对门的模拟,也适用于对模型及钟摆等物体的模拟
Fixed Joint:固定关节,固定关节组件用于约束一个游戏对象对另一个游戏对象的运动
Spring Jonit:弹簧关节,弹簧关节组件可将两个刚体连接在一起,使其像连接着弹簧那样运动
Character Joint:角色关节主要用于表现布娃娃效果,它使扩展的球关节,可用于限制每一个轴向上的关节
Configurable Joint:可配置关节,可配置关节组件支持用户自定义关节,它开放了physx引擎中所有与关节相关的属性,因此可像其他类型的关节那样来创造各种行为
力场是一种为刚体快速添加恒定作用力的方法,适用于类似火箭等发射出来的对象,这些对象在起初并没有很大的速度但却是再不断加速的
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:543192次
积分:5153
积分:5153
排名:第5583名
原创:64篇
评论:193条
(2)(1)(2)(1)(1)(2)(3)(20)(4)(2)(7)(2)(6)(16)
(window.slotbydup = window.slotbydup || []).push({
id: '4740887',
container: s,
size: '250,250',
display: 'inlay-fix'(六)Unity3D物理引擎组件汇总 - 简书
(六)Unity3D物理引擎组件汇总
首先要熟悉一些基本的力学名词及相关公式
力(F):力是物体对物体的作用,力不能脱离物体而单独存在。Unity的物理引擎就是以此为基础构建的。重力(G):物体由于地球的吸引而受到的力叫重力。重力的施力物体是地心。Unity中的重力与其相似。重力的方向总是竖直向下。摩擦力:在Unity中分为滑动摩擦力和静摩擦力。通常通过设置动摩擦系数和静摩擦系数来控制物体的运动。(滚动摩擦一般不用)弹力:在Unity中物体受外力后产生与其相反方向的力。通常通过设置弹性系数来使物体获得弹性属性。扭矩力:使物体发生转动的力。阻尼:当物体受到外力作用而振动时,会产生一种使外力衰减的反力,称为阻尼力(或减震力) 。
重力加速度(单位:m/s^2):g = 9.81(在Unity中)重力(单位:N): G = mg 滑动摩擦力(单位:N):F = μ×FN(FN:正压力,μ:动摩擦因数)单摆周期公式(单位:s):T = 2π√(L/g)(L:摆长)力矩(单位:N×m): M = FL(L:摆动轴)
1、Rigibody(刚体)组件
物体要受力的影响就需要添加Rigibody组件。(基本上能动的物体都需要Rigibody组件)物体添加Rigibody组件后,可以接受外力和扭矩力,并一直受到重力影响,
选中一个物体后,为其添加Rigibody组件。
添加Rigidbody组件
1-1、Rigibody组件的属性面板及参数详解
Rigibody属性面板
Mass(质量):用于设置游戏对象的质量。(一般在同一游戏场景中,游戏对象之间的质量差不大于100倍)Drag(阻力):即游戏对象受力运动时受到的空气阻力,阻力极大时,游戏对象会立即停止运动。Angular Drag(角阻力):即游戏对象受扭矩力旋转时受到的空气阻力。同样的,阻力极大时,游戏对象会立即停止旋转。Use Gravity(使用重力):即开启此项时,游戏对象会受到重力的影响。Is Kinematic(是否开启动力学):即开启此项时,游戏对象将不再受到物理引擎的影响,从而只能通过Transform属性来对其操作。(该方式适用于模拟平台的移动或带有铰链关节链接刚体的动画)Interpolate(插值):用于控制刚体运动的抖动情况。None:没有插值。Interpolate:内插值。基于前一帧的Transform平滑此次的Transform。Extrapolate:外插值。基于下一帧的Transform平滑此次的Transform。Collision Detection(碰撞检测):该属性用于控制避免高速运动的游戏对象穿过其它对象而未发生碰撞。Discrete:离散碰撞检测。该模式与场景中其它的所有碰撞体进行碰撞检测。该值为默认值。Continuous:连续碰撞检测。该模式用于检测与动态碰撞体(带有Rigidbody)碰撞,使用连续碰撞检测模式来检测与网格碰撞体的(不带Rigidbody)碰撞。其它的刚体会采用离散碰撞模式。此模式适用于那些需要采用连续动态碰撞检测的对象相碰撞的对象。这对物理性能会有很大的影响,如果不需要对快速运动的对象进行碰撞检测,不建议使用此模式,建议使用离散碰撞检测模式。Continuous Dynamic:连续动态碰撞检测。该模式用于检测与采用连续碰撞模式或连续动态碰撞模式对象的碰撞,也可以用于检测没有Rigidbody的静态网格碰撞体。对于与之碰撞的其它对象可采用离散碰撞检测。该模式也可以用于检测快速运动的游戏对象。Constraints(约束):该项用于控制对于刚体运动的约束。Freeze Position:冻结位置。刚体对象在世界坐标系中的x,y,z轴方向上(选中状态)的移动将无效。Freeze Rotation:冻结旋转。刚体对象在世界坐标系中的x,y,z轴方向上(选中状态)的旋转将无效。
2、Constant Force(恒力)组件
Constant Force用来为刚体添加恒力。适用于类似火箭发射的对象,因为F=ma,使得这类对象的速度不断提升。
选中一个物体后,为其添加Constant Force组件。
添加Constant Force组件
2-1、Constant Force组件的属性面板及参数详解
Constant Force属性面板
四种属性均用三维向量表示,坐标轴表示方向,数值表示大小。
Force(力):设置世界坐标系中使用的扭矩力。Relative Force(相对力):设置在物体局部坐标系中使用的力。Torque(扭矩):设置在世界坐标系中使用的扭矩力。游戏对象依据该向量进行转动。(向量越长转动越快)Relative Torque(相对扭矩):相对扭矩。设置在物体局部坐标系中使用的扭矩力。。游戏对象依据该向量进行转动。(向量越长转动越快)
3、Character Controller(角色控制器)组件
Character Controller主要用于第三人称或第一人称游戏主角的控制。不使用刚体物理效果。(Character Controller可通过物理效果影响其他的对象,但无法通过物理效果被其他的对象影响)
选中一个物体后,为其添加Character Controller组件。
Character Controller组件
3-1、Character Controller组件的属性面板及参数详解
Character Controller属性面板
Slope Limit(坡度限制):设置所控制的游戏对象只能爬上角度小于或等于该参数值的斜坡倾角。
Step Offset(台阶高度):设置所控制的游戏对象可以迈上的最高台阶的高度。
Skin Width(皮肤厚度):该参数决定了两个碰撞体可以相互参入的深度。较大的参数值会产生抖动的现象,较小的参数值会导致所控制的游戏对象被卡住,较为合理的设置是该参数值为Radius值的10%。
Min Move Distance(最小移动距离):如果所控制的游戏对象的移动距离小于该值,则游戏对象将不会移动,这样可避免抖动,大多数情况下将该值设为0。
Center(中心):该参数决定了胶囊碰撞体与所控制的游戏对象的相对位置,并不影响所控制的角色对象的中心坐标
Radius(半径):胶囊体碰撞的长度半径,同时该项也决定了碰撞体的半径。
Height(高度):用于设置所控制的角色对象的胶囊体碰撞体的高度。
4、Collider(碰撞体/器)组件
Collider要与Rigibody一起添加到游戏对象上才能触发碰撞。两个刚体撞在一起时,拥有碰撞体的对象才会计算碰撞。都没有碰撞体的两个刚体会彼此穿过,不会发生碰撞。
添加Collider组件方法
添加Collider组件方法
一般创建一个游戏对象时会自动添加相应的碰撞体。
4-1、Box Collider(盒碰撞体)
该碰撞体可调整为不同大小的长方体。可用作门、墙、平台,也可用于布娃娃的角色躯干或汽车等交通工具的外壳上。
创建 Cube 时自动添加 Box Collider 组件
4-2、Sphere Collider(球形碰撞体)
该碰撞体的三维大小可以均匀地调节,但不能单独调节某个坐标轴方向的大小。可用作落石、球类等游戏对象。
创建 Spere 时自动添加 Sphere Collider 组件
4-3、Capsule Collider(胶囊碰撞体)
该碰撞体的高度和半径可单独调节。可用作角色控制器或与其他不规则形状的碰撞结合使用。(Uinty中角色控制器中通常内嵌了胶囊碰撞体)
创建 Capsule 和 Cylinder 时自动添加 Capsule Collider 组件
4-4、Mesh Collider(网格碰撞体)
该碰撞体通过获取网格对象并在其基础上构建碰撞。与在复杂的网络模型上使用基本碰撞体相比,网格碰撞体要更加精细,但会占用更多的系统资源。(开启Convex参数的网格碰撞体才可以与其他的网格碰撞体发生碰撞)
创建 Plane 和 Quad 时会自动添加 Mesh Collider 组件
4-5、Terrain Collider(球形碰撞体)
该碰撞体是基于地形构建的碰撞体。
创建 Terrain 时会自动添加 Terrain Collider 组件
4-6、Wheel Collider(车轮碰撞体)
车轮碰撞体是一种针对地面车辆的特殊碰撞体,它有内置的碰撞检测、车轮物理系统及有滑胎摩擦的参考体。除了车轮,该碰撞体也可用于其他的游戏对象。
5、Joint(关节)组件
关节是模拟物体与物体之间的一种连接关系,关节必须依赖于刚体组件。关节组件可以添加到多个游戏对象中,关节又分为3D类型的关节和2D类型的关节。(本篇讲述3D关节)
添加Joint组件方法
添加Joint组件方法
5-1、Hinge Joint(铰链关节)的属性及参数详解
由两个刚体组成,使它们像被连接在一个铰链上那样运动。它非常适用于对门的模拟,也可用作模型链及钟摆等物体。
Hinge Jonit属性面板
Connected Body(连接刚体):为关节指定要连接的刚体。(若不指定刚体,则该关节默认与世界相连)
Anchor(锚点):刚体可围绕锚点进行摆动。该值应用于局部坐标系。
Axis(轴):定义刚体摆动的方向。该值应用于局部坐标系。
Auto Configure Connected Anchor(自动设置连接锚点):勾选该项,连接锚点会自动设置。(该项默认为开启状态)
Connected Anchor(连接锚点):自动连接锚点项开启时,此项会自动设置。自动连接锚点项未开启时,可手动设置连接锚点。
Use Spring(使用弹簧):勾选该项,弹簧会使刚体与其连接的主体形成一个特定的角度
Spring(弹簧):当Use Spring参数开启时,此属性有效。
Spring:弹簧力。设置推动对象使其移动到相应位置的作用力。
Damper:阻尼。设置对象的阻尼值,数值越大则对象移动得越缓慢。
Target Position:目标角度。设置弹簧的目标角度,弹簧会拉向此角度。
Use Motor(使用发动机):勾选该项,发动机会使对象发生旋转。
Motor(发动机):当Use Motor参数开启时,此属性有效。
Target Velocity:目标速度。设置对象预期将要达到的速度值。
Force:作用力。设置为了达到目的速度而施加的作用力。
Free Spin:自动转动。勾选该项,则发动机永远不会停止,旋转只会越转越快。
Use Limits(使用限制):勾选该项,铰链的角度将被限定在最大值和最小值之间。
Limits(限制):当Use Limits参数开启时,此属性有效。
Min:最小值。设置铰链能达到的最小角度。
Max:最大值。设置铰链能达到的最大角度。
Min Bounce:最小反弹。设置当对象触到最小限制时的反弹值。
Max Bounce:最大反弹。设置当对象触到最大限制时的反弹值。
Contact Distance:接触距离。控制关节的抖动。
Break Force(断开力):设置铰链关节断开的作用力。
Break Torque(断开转矩):设置断开铰链关节所需的转矩。
Enable Collision(激活碰撞):勾选该项,关节之间也会检测碰撞。
Enable Preprocessing(启用预处理):勾选该项,实现关节的稳定。(该项默认为开启状态)
5-2、Fixed Joint(固定关节)的属性及参数详解
固定关节用于约束一个游戏对象对另一个游戏对象的运动。类似于对象的父子关系,但它是通过物理系统来实现而不像父子关系那样是通过Transform属性来进行约束。(使用固定关节的对象自身需要有一个刚体组件)适用于当希望将对象较容易与另一个对象分开时,或者连接两个没有父子关系的对象使其一起运动时。
Fixed Joint属性面板
Connected Body (连接刚体):用于指定关节要连接的刚体。(若不指定刚体,则该关节默认与世界相连)
Break Force(断开力):设置关节断开的作用力。
Break Torque(断开转矩):设置断开关节所需的转矩。
Enable Collision(激活碰撞):勾选此项,则关节之间也会检测碰撞。
Enable Preprocessing(启用预处理):勾选该项,实现关节的稳定。(该项默认为开启状态)
5-3、Spring Joint(弹簧关节)的属性及参数详解
弹簧关节组件可将两个刚体连接在一起,使其像连接着弹簧那样运动。
Spring Joint属性面板
Connected Body(连接刚体):用于为弹簧指定要连接的刚体。(若不指定刚体,则该关节默认与世界相连)
Anchor(锚点):设置Joint在对象局部坐标系中的位置。(注意:不是对象将弹向的点)
Auto Configure Connected Anchor(自动设置连接锚点):勾选该项,连接锚点会自动设置。(该项默认为开启状态)
Connected Anchor(连接锚点):自动连接锚点项开启时,此项会自动设置。自动连接锚点项未开启时,可手动设置连接锚点。
Spring(弹簧):设置弹簧的强度,数值越高弹簧的强度就越大。
Damper(阻尼):设置弹簧的阻尼系数,阻尼数值越大,弹簧强度减小的幅度越大。
Min Distance(最小距离):设置弹簧启用的最小距离值。如果两个对象之间的当前距离与初始距离的差小于该值,则不会开启弹簧。
Max Distance(最大距离):设置弹簧启用的最小距离值。如果两个对象之间的当前距离与初始距离的差大于该值,则不会开启弹簧。
Break Force(断开力):设置弹簧关节断开所需的作用力。
Break Torque(断开转矩):设置弹簧关节断开所需的转矩力。
Enable Collision(激活碰撞):勾选该项,关节之间也会检测碰撞。
Enable Preprocessing(启用预处理):勾选该项,实现关节的稳定。(该项默认为开启状态)
5-4、Character Joint(角色关节)的属性及参数详解
角色关节主要用于表现布娃娃效果,它是扩展的球关节,可用于限制关节在不同旋转轴下的旋转角度。
Character Joint属性面板
Connected Body(连接刚体):用于为角色关节指定要连接的刚体。(若不指定刚体,则该关节默认与世界相连)
Anchor(锚点):设置游戏对象局部坐标系中的点,角色关节将按围绕该点进行旋转。
Axis(扭动轴):设置角色关节的扭动轴。(以橙色的圆锥gizmo表示)
Auto Configure Connected Anchor(自动设置连接锚点):勾选该项,连接锚点会自动设置。(该项默认为开启状态)
Connected Anchor(连接锚点):自动连接锚点项开启时,此项会自动设置。自动连接锚点项未开启时,可手动设置连接锚点。
Swing Axis(摆动轴):设置角色关节的摆动轴。(以绿色的圆锥gizmo表示)
Twist Limit Spring(弹簧的扭曲限制)
Spring:设置角色关节扭曲的弹簧强度。
Damper:设置角色关节扭曲的阻尼值。
Low Twist Limit(扭曲下限):设置角色关节扭曲的下限。
Limit:设置角色关节扭曲的下限值。
Bounciness:设置角色关节扭曲下限的反弹值。
Contact Distance:设置用于为了避免抖动而限制的接触距离。
High Twist Limit(扭曲上限):设置角色关节扭曲的上限。
Limit:设置角色关节扭曲的上限值。
Bounciness:设置角色关节扭曲上限的反弹值。
Contact Distance:设置用于为了避免抖动而限制的接触距离。
Swing Limit Spring(弹簧的摆动限制)Spring:设置角色关节摆动的弹簧强度。Damper:设置角色关节摆动的阻尼值。
Swing 1,2 Limit(摆动限制1,2):1与2的限制是对称的,即更改一个里面的三项属性即可。
Limit:设置角色关节摆动的限制值。
Bounciness:设置角色关节摆动限制的反弹值。
Contact Distance:设置用于为了避免抖动而限制的接触距离。
Enable Projection(启动投影):该项用于激活投影。
Projection Distance(投影距离):设置当对象与其连接刚体的距离超过投影距离时,该对象会回到适当的位置。
Projection Angle(投影角度):设置当对象与其连接刚体的角度超过投影角度时,该对象会回到适当的位置。
Break Force(断开力):控制角色关节断开所需的作用力。
Break Torque(断开转矩):设置角色关节断开所需的转矩。
Enable Collision(激活碰撞):勾选该项,则关节之间也会检测碰撞。
Enable Preprocessing(启用预处理):勾选该项,实现关节的稳定。(该项默认为开启状态)
5-5、Configurable Joint(可配置关节)的属性及参数详解
可配置关节组件支持用户自定义关节,它开放了PhysX引擎中所有与关节相关的属性,因此可像其他类型的关节那样来创造各种行为。可配置关节有两类主要的功能:移动/旋转限制和移动/旋转加速度。
Configurable Joint属性面板
connected boby(连接刚体):用于为关节指定要连接的刚体。(若不指定则该关节将与世界相连接)
anchor(锚点):设置关节的中心点,所有基于物理效果的模拟都会以此点为中心点来进行计算。
axis(主轴):设置局部旋转轴,该轴决定了对象在物理模拟下自然旋转的方向。
Auto Configure Connected Anchor(自动设置连接锚点):勾选该项,连接锚点会自动设置。(该项默认为开启状态)
Connected Anchor(连接锚点):自动连接锚点项开启时,此项会自动设置。自动连接锚点项未开启时,可手动设置连接锚点。
Secondary Axis(副轴):主轴和副轴共同决定了关节的局部坐标。第三个轴与这两个轴所构成的平面相垂直。
Xmotion(X轴移动):设置游戏对象在X轴的移动形式,有自由移动(Free)、锁定移动(Locked)及限制性移动(Limited)。
Ymotion(Y轴移动):设置游戏对象在Y轴的移动形式,有自由移动(Free)、锁定移动(Locked)及限制性移动(Limited)。
Zmotion(Z轴移动):设置游戏对象在Z轴的移动形式,有自由移动(Free)、锁定移动(Locked)及限制性移动(Limited)。
Angular Xmotion(X轴旋转):设置游戏对象围绕X轴的旋转形式,有自由旋转(Free)、锁定旋转(Locked)及限制性旋转(Limited)。
Angular Ymotion(Y轴旋转):设置游戏对象围绕Y轴的旋转形式,有自由旋转(Free)、锁定旋转(Locked)及限制性旋转(Limited)。
Angular Zmotion(Z轴旋转):设置游戏对象围绕Z轴的旋转形式,有自由旋转(Free)、锁定旋转(Locked)及限制性旋转(Limited)。
Linear Limit Spring(弹簧线性限制)Spring:弹簧。设置将对象拉回边界的力。Damper:阻尼。设置弹簧的阻尼值。
Linear Limit(线性限制):设置自关节原点的距离为基准对其运动边界加以限定。
Limit:限制。设置从原点到边界的距离。
Boundciness:反弹。设置当对象到边界时施加给它的反弹力。
Contact Distance:设置用于为了避免抖动而限制的接触距离。
Angular X Limit Spring(X轴旋转限制)
Spring:弹簧。设置将对象拉回边界的力。
Damper:阻尼。设置弹簧的阻尼值。
Low Angular X Limit(X轴旋转下限):以与关节初始旋转的差值为基础设置旋转约束下限的边界。
Limit:旋转的限制角度。设置对象旋转角度的下限值。
Bounciness:反弹。设置当对象到边界时施加给它的反弹力。
Contact Distance:设置用于为了避免抖动而限制的接触距离。
High Angular X Limit(X轴旋转上限):以与关节初始旋转的差值为基础设置旋转约束上限的边界。
Limit:旋转的限制角度。设置对象旋转角度的上限值。
Bounciness:反弹。设置当对象到边界时施加给它的反弹力。
Contact Distance:设置用于为了避免抖动而限制的接触距离。
Angular YZ Limit Spring(Y轴和Z轴旋转限制)属性参数同Angular X Limit Spring
Angular Y Limit*(Y轴旋转限制)属性参数同Angular X Limit
Angular Z Limit*(Y轴旋转限制)属性参数同Angular X Limit
Target Position(目标位置):关节在X,Y,Z三个轴向上应达到的目标位置。
Target Velocity(目标速度):关节在X,Y,Z三个轴向上应达到的目标速度。
XDrive(X轴驱动):设置了对象沿局部坐标系X轴的运动形式。
Position Spring:位置弹簧力。朝预定义方向上的皮筋的拉力。
Position Damper:位置阻尼。抵抗位置弹簧力的力。
Maximum Force:最大作用力。推动对象朝预定方向运动的作用力的总和。
YDrive(Y轴驱动):设置了对象沿局部坐标系Y轴的运动形式。属性参数同XDrive
ZDrive(Z轴驱动):设置了对象沿局部坐标系Z轴的运动形式。属性参数同XDrive
Target Rotation(目标旋转):目标旋转是一个四元数,它定义了关节应当旋转到的角度。
Target Angular Velocity(目标旋转角速度):目标旋转角速度是一个三维向量,它定义了关节应当旋转到的角速度。
Rotation Drive Mode (旋转驱动模式):通过X&YZ轴驱动或插值驱动来控制对象自身的旋转。
Angular X Drive (X轴角驱动):设置了关节如何围绕X轴进行旋转。
Position Spring:位置弹簧力。朝预定义方向上的皮筋的拉力。
Position Damper:位置阻尼。抵抗位置弹簧力的力。
Maximum Force:最大作用力。推动对象朝预定方向运动的作用力的总和。
Angular YZ Drive (YZ轴角驱动):设置了关节如何围绕自身的Y轴和Z轴进行旋转。 属性参数同Angular X Drive
Slerp Drive(差值驱动):设置了关节如何围绕局部所有的坐标轴进行旋转。 属性参数同Angular X Drive
Projection Mode(投影模式):设置当对象离开其限定的位置过远时,会让该对象回到其受限制的位置。可设置为位置和旋转(Position and Rotation)以及不选择(None)。
Projection Distance(投射距离):设置当对象与其连接刚体的距离超过投影距离时,该对象会回到适当的位置。
Projection Angle(投影角度):设置当对象与其连接刚体的角度差超过投影角度时,该对象会回到适当的位置。
Configured In World Space(在世界坐标系中配置):勾选该项,所有与目标相关的数值都会在世界坐标系中来计算,而不在对象的局部坐标系中计算。
Swap Bodies(交换体):勾选该项,则应用交换刚体功能,连接着的两个刚体会发生交换。
Break Force(断开力):设置控制关节断开所需的作用力。
Break Torque(断开转矩):设置关节断开所需的转矩。
Enable Collision(激活碰撞):勾选该项,关节之间也会检测碰撞。
Enable Preprocessing(启用预处理):勾选该项,实现关节的稳定。(该项默认为开启状态)}

我要回帖

更多关于 unity3d引擎架构设计 的文章

更多推荐

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

点击添加站长微信