unity之Rigidbody属性

Rigidbody属性

Mass表示物体的质量,数值类型为float,默认值为1。大部分物体的质量属性接近于0.1才符合日常生活感官感受,超过10 ,则失去了仿真效果。

Drag表示平移阻力,其数值类型为float,初始值为0,用来表示物体因受阻力而速度衰减的状态。

Angular Drag 旋转阻力,其数值类型为float,初始值为0.05,用于模拟物体因旋转而受到的各方面的影响的现象。

Use Gravity使用重力,表示物体是否受到重力影响,其数据类型是boolean ,初始值为true,该属性设置为false时用来模拟失重现象。

Is Kinematic是否遵循运动学,该属性表示对象是否遵循牛顿运动学物理定理,其数据类型是boolean ,初始值为false。如果该属性设置为true表示该物体运动状态不受外力,碰撞和关节的影响,而只受到动画以及附加在物体上的脚本影响,但是该物体仍然能改变其他物体运动状态,例如游戏中倒下的敌人始终不动 ,就是利用这个属性 。

Interpolate 插值,还属性表示的是该物体运动的插值模式,默认状态下是被禁用的。选择该模式时,在此模式下物理引擎会在物体的运动帧之间进行插值,使得运动更加自然。另外插值导致了物理模拟和渲染的不同步,进而产生物体轻微抖动现象,建议可以对主要角色使用插值,而其他的则禁用此功能,以达到折中的效果。

Freeze Rotation冻结旋转,该属性表示的是该物体的旋转是否受到物理定理的约束。默认状态下任意轴的旋转是受物理定律控制的,该属性的值是修改在每个轴上的旋转属性来实现的。例如在第一人称射击游戏中,通过去除该属性的控制,可以使玩家完全控制视角旋转。

Collision Detection碰撞检测模式,默认状态时Discrete。在没有发生碰撞检测的情况下,碰撞物体会穿过对方,产生所谓 穿透现象。碰撞模式有不连续模式(Discrete),连续模式(Continuous)和动态连续模式(ContinuousDynamic),动态连续模式适用于高速运动的物体,连续模式仅仅可以用于球体,胶囊和盒子碰撞者的刚体,而且会严重影响物体的运动表现,因此大部分采用不连续模式。

时间: 2024-11-08 19:22:58

unity之Rigidbody属性的相关文章

unity collider rigidbody zz

http://blog.sina.com.cn/s/blog_5b6cb95001017vfr.html 其中最基本的关系: Collider是最基本的触发物理的条件,例如碰撞检测.基本上,没有Collider物理系统基本没有意义(除了重力). Rigidbody是物体的基本物理属性设置,当检测碰撞完之后,就要计算物理效果,而Rigidbody就是提供计算基本参数的玩意. PhysicMaterial则是附加的基本物理参数,是一个物理材质,UNITY3D有自带默认的物理材质的系数(在Edit/P

unity中mesh属性的uv坐标讨论

http://blog.sina.com.cn/s/blog_427cf00b0102vp0j.html 之前在做连连看游戏中,也用到贴图坐标,当时我们讲到,不管是平铺(Tiling)还是偏移(Offset),我们参考的基准都是原始的那张图,Tiling配合Offset,Tiling负责截取,Offset负责移动,最终实现截取贴图的任一部分?,但是这种方法弄出的图形形状都是方块的,无法实现任意的贴图 而下面要讨论的方法和上面的方法会大不一样,会从UV坐标的角度去讨论,从而实现想怎么贴就怎么贴的效

Unity -- Collider(碰撞器与触发器)

(2d与3d的Collider可以相互存在,但是无法相互协作,如2d是无法检测3d的,反之,一样) 在目前掌握的情况分析,在Unity中参与碰撞的物体分2大块:1.发起碰撞的物体.2.接收碰撞的物体. 1. 发起碰撞物体有:Rigodbody , CharacterController . 2. 接收碰撞物体由:所有的Collider . 工作的原理为:发生碰撞的物体中必须要有“发起碰撞”的物体.否则,碰撞不响应. 比如:墙用BoxCollider ,所以墙与墙之间无反应. 比如:一个带有Rig

Unity动态改变src的解决方法

在c#程序(winform,wpf)中可以嵌入unity控件,从而实现三维场景.通过设置unity控件的src属性来设置场景,然而src必须是绝对路径,而且只能在设计器进行设置,不能在代码中动态修改,这在需要运行时动态切换场景的时就悲剧了.当然网上有很多关于Unity 如何动态改变src的方法,其方法是正确的,最大的问题莫过于没有说明代码该放在什么地方,干着急. 下面假设unity控件的文件Unity3dControl.cs,那么打开Unity3dControl.designer.cs,找到函数

Unity原生渲染方案

Unity原生渲染方案 作者:3dimensions 本文为原创内容,转载请注明出处. 做这个的动机是想在原生代码中使用Unity的材质系统绘制,同时由原生代码提供绘制数据,省掉动态模型数据“非托管内存→ 托管内存→ 非托管内存”的传输过程.适用于有大量动态模型数据生成的情况,注意,如果不使用Unity的材质系统,并不需要按这个方案做.方案是我在Miloyip的建议下完成的. 一.目标 在Unity中,动态生成三维模型需要把数据填入Mesh对象中,当中Unity内部需要分配内 存及做数据转换,效

.net Ico 之 Unity 适合刚开始使用

介绍: 首先稍微介绍一下,Unity是微软patterns& practices组用C#实现的轻量级.可扩展的依赖注入容器,可通过代码或xml配置文件来配置对象之间的关系.那么通过一个简单的代码来实现. 测试项目详细 1.新建一个控制台项目叫UnityDemo 2.建立一个接口IProduct,包括一个属性(string ClassName{get;set;}),一个方法(void ShowInfo()) 3.建立两个类Milk,Sugar,并且继承IProduct,两个类实现代码如下: pub

WCF技术剖析之七:如何实现WCF与EnterLib PIAB、Unity之间的集成

原文:WCF技术剖析之七:如何实现WCF与EnterLib PIAB.Unity之间的集成 在这之前,我写过深入介绍MS EnterLib PIAB的文章(参阅<MS Enterprise Library Policy Injection Application Block 深入解析[总结篇]>),也写过WCF与PIAB的集成(参阅:<WCF后续之旅(8):通过WCF Extension 实现与MS Enterprise Library Policy Injection Applicat

.NET 用 Unity 依赖注入&mdash;&mdash;注册和解析类型

Unity Unity Application Block (Unity)是一个轻量级的,可扩展的依赖注入容器,它支持构造函数注入,属性注入和方法调用注入.它为开发人员提供了以下优点: 提供简化的对象创建,特别是层级对象结构和依赖,简化应用程序代码: 支持需求抽象:这可以让开发者在运行时或是配置文件指定依赖,简化横切关注点(crosscutting concerns)的管理: 通过延迟组件配置到容器,增加了灵活性: 具有服务定位器功能:这可以让客户存储或缓存容器.对 ASP.NET Web 应用

Unity Shader入门精要学习笔记 - 第3章 Unity Shader 基础

来源作者:candycat   http://blog.csdn.net/candycat1992/article/ 概述 总体来说,在Unity中我们需要配合使用材质和Unity Shader才能达到需要的效果.一个最常见的流程是. 1)创建一个材质 2)创建一个Unity Shader,并把它赋给上一步创建的材质 3)把材质赋给要渲染的对象 4)在材质面板中调整Unity Shader的属性,以得到满意的效果 下图显示了Unity Shader和材质是如何一起工作来控制物体的渲染的. Uni