You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.9 KiB

自定义按键映射说明

按键映射文件为json格式新增自己的按键映射文件需要放在keymap目录中才可以被QtScrcpy识别。

按键映射文件的具体编写格式下面会介绍,也可以参考自带的按键映射文件。

按键映射脚本格式说明

通用说明

  • 按键映射中的坐标位置都是用相对位置表示的屏幕的宽高都用1表示例如屏幕的像素为1920x1080那么坐标(0.5,0.5)则表示的是 以屏幕左上角为原点,像素坐标(1920,1080)*(0.5,0.5)=(960,540)的位置。
  • 按键映射中的按键码是用Qt的枚举表示的详细说明可以参考Qt文档(搜索 The key names used by Qt. 可以快速定位)。

映射类型说明

  • switchKey切换自定义按键映射的开关键默认为普通映射需要使用这个按键在普通映射和自定义映射之间切换。

  • mouseMoveMap鼠标移动映射鼠标的移动将被映射为以startPos为起点以鼠标移动方向为移动方向的手指拖动操作。 一般在FPS手游中用来调整人物视野。

    • startPos 手指拖动起始点
    • speedRatio 鼠标移动映射为手指拖动的比例,可以控制鼠标灵敏度
  • keyMapNodes 一般按键的映射json数组所有一般按键映射都放在这个数组中将键盘的按键映射为普通的手指点击。

一般按键映射有如下几种类型:

  • type 按键映射的类型每个keyMapNodes中的元素都需要指明可以是如下类型
    • KMT_CLICK 普通点击,键盘按下模拟为手指按下,键盘抬起映射为手指抬起
    • KMT_CLICK_TWICE 两次点击,键盘按下模拟为手指按下再抬起,键盘抬起映射为手指按下再抬起
    • KMT_STEER_WHEEL 方向盘映射专用于FPS游戏中移动人物脚步的方向盘的映射需要4个按键来配合。

不同按键映射类型的专有属性说明:

  • KMT_CLICK

    • key 要映射的按键码
    • pos 模拟触摸的位置
    • switchMap 是否切换按键模式点击此按键后除了默认的模拟触摸映射是否附带切换按键映射模式。可以参考和平精英映射中M地图映射的效果
  • KMT_CLICK_TWICE

    • key 要映射的按键码
    • pos 模拟触摸的位置
  • KMT_STEER_WHEEL

    • centerPos 方向盘中心点
    • leftKey 左方向的按键控制
    • rightKey 右方向的按键控制
    • upKey 上方向的按键控制
    • downKey 下方向的按键控制
    • leftOffset 按下左方向键后模拟拖动到相对centerPos位置水平偏左leftOffset处
    • rightOffset 按下右方向键后模拟拖动到相对centerPos位置水平偏右rightOffset处
    • upOffset 按下上方向键后模拟拖动到相对centerPos位置水平偏上upOffset处
    • downOffset 按下下方向键后模拟拖动到相对centerPos位置水平偏下downOffset处