我的统一C#代码不会让精灵[paddle]在触摸屏上上下移动
using UnityEngine;
using System.Collections;
public class Paddle : MonoBehaviour
{
public float paddleSpeed = 1;
public Vector3 playerPos;
void Update()
{
float yPos = transform.position.y + (Input.GetAxis("Vertical") * paddleSpeed);
playerPos = new Vector3(-20, Mathf.Clamp(yPos, -13, 13), 0);
transform.position = playerPos;
}
}
答案 0 :(得分:0)
首先,检查Input.GetAxis(“Vertical”)是否返回一个值。也许你输入的映射是不正确的,你永远不会得到一个值。 然后检查值是否太大。由于你夹在-13和13之间,可能你的对象停留在同一个地方。
只是一些建议:
显然你不需要将playerPos作为类变量,因为你只在一个函数中使用它
通过选中
启动更新功能if(Input.GetAxis("Vertical") > 0 )
否则,即使它没有改变,你也会每次实例化并分配位置