简单坦克移动控制的完善——Unity随手记(2020.11.5)

今天依旧是坦克项目
本来想试试wheelCollider来做移动的,直到我看了这个视频:
How to make Simple Tank Controller + Camera Controller | Unity Tutorial
应该是个老外做的,看的出来他很熟练,但是效果很不怎么样。。
其实仔细想想,战争雷霆那么真实的一个游戏,我真的喜欢他的操作手感吗?
其实我只需要有物理,然后移动不要那么僵硬,不要一点加减速的感觉都没有就行了。。。
物理效果还是得靠刚体和碰撞器,但是加减速。。。
我看了看移动的实现

transform.Translate(new Vector3(0f, 0f, moveSpeed) * Time.deltaTime);

其中moveSpeed是个不变的值,用这个直接移动确实不行。
其实我早想到了,用GetAxis就有那种效果了。
但是我绕了点弯路,我找到了以前做的Unity官方提供的tank项目

从这个项目说不定我能学点东西

private void Move ()
{
   
	// Create a vector in the direction the tank is facing with a magnitude based on the input, speed and the time between frames.
	Vector3 movement = transform.forward * m_MovementInputValue * m_Speed * Time.deltaTime;

	// Apply this movement to the rigidbody's position.
	m_Rigidbody.MovePosition(m_Rigidbody.position + movement);
}

private void Turn ()
{
   
	// Determine the number of degrees to be turned based on the input, speed and time between frames.
	float turn = m_TurnInputValue * m_TurnSpeed 
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值