在【Edit→Project Settings→Input】中可以打开 InputManager 配置界面,用户可以在此配置虚拟轴信息。 // 按左右箭头或A、D键,hor在-1~1之间变化floathor=Input.GetAxis("Horizontal");// 按上下箭头或W、S键,hor在-1~1之间变化floatver=Input.GetAxis("Vertical");// 获取鼠标在水平方向上的移动floatmouse...
3. Unity的Project中右键->Create->Input Actions。 4. Action Maps取名,如Player。Actions右边小“+”添加New action,取名如:Action_Move,表示鼠标移动。此时对应Properties->Action->Action Type: Pass Through; Control Type: Vector 2. 继续添加Binding:Mouse->Positions. 5. 设置鼠标触发事件。New action:Actio...
Debug.Log(Input.mouseScrollDelta); } 1. 2. 3. 4. 5. 触屏输入 触屏输入不光有位置和点击,最主要的是多了多点支持。通常先通过Input.touchCount属性来判断是否有点击,然后通过Input.GetTouch获得具体的触控(Touch),通过具体的触控来获取位置和状态等信息。 触屏点击状态通过Touch.phase属性获取,有下列状态。
Input.GetMouseButtonDown(0) //鼠标左键按下 Input.GetMouseButtonDown(1) //鼠标右键按下 Input.GetMouseButtonUp(0) //鼠标左键抬起 Input.GetMouseButtonUp(1) //鼠标右键抬起 键盘事件: Input.GetKeyDown(KeyCode.键值) //键盘按下 Input.GetKeyUp(KeyCode.键值) //键盘抬起 常用的键值: KeyCode.大写字母A-Z...
世界坐标→屏幕坐标:camera.WorldToScreenPoint(transform.position);这样可以将世界坐标转换为屏幕坐标。其中camera为场景中的camera对象。 屏幕坐标→视口坐标:camera.ScreenToViewportPoint(Input.GetTouch(0).position);这样可以将屏幕坐标转换为视口坐标。其中camera为场景中的camera对象。
Debug.Log("Right Button Pressed");//Get mouse x position on screenfloatX =Input.mousePosition.x;floatY =Input.mousePosition.y; } 3、使用射线Ray 射线是3D里面的概念,当然在2D游戏里面一样可以使用。 射线:射线是3D世界中一个点向一个方向发射的一条无终点的线,在发射轨迹中与其他物体发生碰撞时,它将...
public class TouchInputManager : MonoBehaviour { void Update() { if (Input.touchCount > 0) { Touch touch = Input.GetTouch(0); // Get the first touch Vector2 touchPosition = touch.position; // for 2d games // Now you can use 'touchPosition' to determine where the user touched the ...
if (Input.GetKey(KeyCode.P)) { Debug.Log("P"); }*///判断鼠标按键有没有按下, int button(0(左), 1(右), 2(中))if(Input.GetMouseButtonDown(2)) { Debug.Log("mouse left down"); }if(Input.GetMouseButtonUp(2)) { Debug.Log("mouse left up"); ...
(Vector3.right*角度归零暂存.x);身体.Rotate(Vector3.up*角度归零暂存.y);}当前镜头推拉插值=Mathf.Clamp01(当前镜头推拉插值-Input.mouseScrollDelta.y*.05f);摄像机位置.position=Vector3.Lerp(镜头推拉最近点.position,镜头推拉最远点.position,当前镜头推拉插值);if(使用鼠标){if(Input.GetMouseButtonDown(...
if(Input.GetMouseButton(0)){//鼠标按着左键移动 y = Input.GetAxis("Mouse X") * Time.deltaTime * speed; x = Input.GetAxis("Mouse Y") * Time.deltaTime * speed; }else{ x = y = 0 ; } //旋转角度(增加) transform.Rotate(new Vector3(x,y,0)); ...