wdjh.net
当前位置:首页 >> unity rigiDBoDy2D >>

unity rigiDBoDy2D

楼楼我会了,是unity版本的问题,你把其中两句改成 if(Mathf.Abs(GetComponent().velocity.x) > maxSpeed) GetComponent().velocity = new Vector2(Mathf.Sign(GetComponent().velocity.x) * maxSpeed, GetComponent().velocity.y); 就可以了

是unity版本的问题,你把其中两句改成 if(Mathf.Abs(GetComponent().velocity.x) > maxSpeed) GetComponent().velocity = new Vector2(Mathf.Sign(GetComponent().velocity.x) * maxSpeed, GetComponent().velocity.y); 就可以了。

是rigidbody变量 未定义为Rigidbody类型,所以提示rigidbody无法访问velocity。你看的视频教程应该是unity4的吧。unity5里所有组件语法都规范话了,和其他组件一样,Rigidbody都要定义一个变量(Rigidbody rigidbody;),然后让该变量指向Rigidbod...

在编程之前首先你要向 GameObject 中增加一个 Rigidbody 的部件。Rigidbody(刚体)的成员函数 void MovePosition(Vector3 position) 是用来改变刚体对象的 transform.position 值的,而且是“瞬间”改变到新的位置,而不是“逐渐移动过去”。如果它...

那句话的意思是 transform.rigidbody2d 这样调用的已经过时了,该换为GetComponent() 去获取.你试试就知道了transform已经没有rigidbody这个属性了

固定旋转?不修改transform属性就不会选择 如果添加了rigidbody2d组件,把组件下面的Freeze Rotation选择相应的轴就可以固定

Unity本身是用的Box2d的普通重力算法,直接使用的话,上升速度和下降速度没有最大值,速度变化也是线性而不会像马里奥那样到跳到顶会稳定一会。 所以,要实现漂亮的跳跃曲线,要自己做重力算法,放弃Unity本身的重力。具体点 如果使用1、RigidBo...

viod OnColliderEnter2D(Collision2d other) { this.gameboject.rigidbody2d.velocity=vector2.zero; } 碰到什么都停止

Vector2 _target = new Vector2 (100, 100); //目标点 Vector2 _from = new Vector2 (0, 0);//起始点 float _moveTime = 5000;//移动到目标点需要的时间 float _timeCount = 0;//已经经过的时间 // Use this for initialization void Start () {...

。。。 rigibody2d是一个类,你需要先获取物体的“rigibody2d”组件,再调用velocity变量。如果你脚本绑定的物体已经添加了rigibody2d组件的话,脚本改为 void FixedUpdate() { if (h * GetComponent ().velocity.x < aaa) GetComponent ().AddFor...

网站首页 | 网站地图
All rights reserved Powered by www.wdjh.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com