Unity二维平面上物体的移动(十五)

本文回顾并详细解析了二维游戏中物体移动的不同控制方式,包括键盘输入、Input.GetAxis()、力导向、初始速度赋予和直接定位。重点讨论了位移与刚体在穿越和间隙移动中的交互,并介绍了如何在开发实践中灵活运用这些技术。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

经过实践了二维平面上物体移动的场景,回顾一下,温故而知新。
有以下几类方式。
1.通过键盘方式控制
Input.GetKey(KeyCode.W)
this.gameObject.transform.Translate(Vector3.up*Time.deltaTime);
2.用开发环境自带设置,Input.GetAxis()
float horizontal=Input.GetAxis(“Horizontal”);
float vertical=Input.GetAxis(“Vertical”);
Player.transform.Translate(Vector3.up * vertical * m_speed * Time.deltaTime);
Player.transform.Translate(Vector3.right * horizontal * m_speed * Time.deltaTime);
3.使用推动力
speed = (new Vector2(2,1))*Power;
GetComponent().AddForce(speed);
4. 赋予一个刚体初速度
pointbird.GetComponent().AddForce(velocity,ForceMode2D.Impulse);
5.直接指定物体位置
this.transform.position = new Vector2(18.5f, 0);
这里面1、2两种是通过位移,3、4两种是利用刚体,但是有一个问题是当物体是刚体属性时,也能使用位移就是穿过其他物体或者说当其他物体能够有间隙移动时,从其他物体的间隙中通过。第5种可以当做顺时移动至某一位置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值