unity3d-键盘控制实现视觉旋转与移动

移动

键盘A 向左移动  键盘D向右移动  键盘W向前移动  键盘S向后移动

ADWS就是Y轴不变的情况下,上下左右移动

移动是给哪个值赋值,就向哪个轴移动,而旋转是以哪个轴进行旋转就赋值给哪个轴

float h= Input.GetAxis("Horizontal")*Time.deltaTime*speed;
float v=Input.GetAxis("Vertical")*Time.deltaTime*speed;
transform.Translate(h,0,v);

 

镜头向左旋转Q 镜头向右旋转E

if(Input.GetKey(KeyCode.Q))
{
//沿着Y轴旋转,也就是左右旋转
transform.Rotate(0,-25*Time.deltaTime,0,Space.Self);
}
if(Input.GetKey(KeyCode.E))
{
transform.Rotate(0,25*Time.deltaTime,0,Space.Self);
}

镜头向上H 镜头向下N

if(Input.GetKey(KeyCode.H))
{
transform.Translate(0,Time.deltaTime*speed,0);
}
if(Input.GetKey(KeyCode.N))
{
transform.Translate(0,-Time.deltaTime*speed,0);
}

镜头向上旋转Z镜头向下旋转C

if(Input.GetKey(KeyCode.Z))
{
//沿着X轴旋转
transform.Rotate(-25*Time.deltaTime,0,0,Space.Self);
}
if(Input.GetKey(KeyCode.C))
{
transform.Rotate(25*Time.deltaTime,0,0,Space.Self);
}

 

也就是说,从以前的前后左右移动,多了上下移动

从以前的左右旋转,多了上下旋转

posted @ 2015-10-27 20:23  程序员学习  阅读(1839)  评论(0编辑  收藏  举报